0

私は Javascript で Facebook API をいじって、Facebook から投稿を取得しようとしています。ドキュメントのこのページからコードをコピーしました。関数は指定されたページにアクセスし、実際に応答を生成します。しかし、response.length と response[i] は「未定義」として返されるため、ループが機能しなくなります。なぜこうなった?

<button onclick="ShowMyPosts()">Show posts</button>
<script language="javascript" type="text/javascript">
    function ShowMyPosts() {
        FB.api('/TheWalkingDeadAMC/posts', { limit: 3 }, function(response) {
            console.log(response)
            console.log(response.length)
          for (var i=0, l=response.length; i<l; i++) {
                var post = response[i];
                console.log(post)
                if (post.message) {
                    console.log('Message: ' + post.message);
                } else if (post.attachment && post.attachment.name) {
              console.log('Attachment: ' + post.attachment.name);
            }
          }
  }
)
console.log("successfully ran function")        
};
</script>

アクセストークンを取得する方法。これは間違っていますか?

FB.login(function(response) {
    if (response.authResponse) {
        var access_token =   FB.getAuthResponse()['accessToken'];
        console.log('Access Token = '+ access_token);
        FB.api('/me', function(response) {
            console.log('Good to see you, ' + response.name + '.');
            });
    } else {
        console.log('User cancelled login or did not fully authorize.');
        }{scope: 'read_stream'} 
    }); 
4

2 に答える 2

0

問題は、私の FB.login が間違っていたことだと思います。これは以下の正しいコードです。

FB.login(
function(response) {
    if (response.authResponse) {
        var access_token =   FB.getAuthResponse()['accessToken'];
        console.log('Access Token = '+ access_token);
        FB.api('/me', function(response) {
            console.log('Good to see you, ' + response.name + '.');
            });
    } else {
        console.log('User cancelled login or did not fully authorize.');
        }},
    {scope: 'read_stream'}  
    ); 
于 2013-04-02T15:16:05.400 に答える