1

ソーシャルメディアツールバーがあります。そして、私はFacebookのようなボタンを持っています。私の望みは、誰かがFacebookのようなボタンをクリックして、ユーザーを見つけ、プロモーションのために関連情報をデータベースに保存することです。

私はそのようなものを作りました

  window.fbAsyncInit = function() {

        FB.Event.subscribe('edge.create',
        function(response) {
            var FBGraphURL = "http://graph.facebook.com/user/callback=?";

            FB.getLoginStatus(function(res) { alert(res); });

            FB.api('/me', function(resp) {
                alert('Good to see you, ' + resp.username + '.');
            });
        });
    };

ただし、それでもresp.usernameはundefinedとして表示されます。この問題を解決するにはどうすればよいですか?

アップデート

作業コード:

window.fbAsyncInit = function() {
    FB.Event.subscribe('edge.create', function(response) {
        login();
    });
};

function login() {
    FB.login(function(response) {
        if (response.authResponse) {
            GetUser();
        } else {
            // cancelled
        }
    }, {scope: 'email'});
}

function GetUser() {
    FB.api('/me', function(resp) {
        alert('Good to see you, ' + resp.email + '.');
    });
}

また、ドメインごとに異なるアプリIDが必要です(重要

4

1 に答える 1

1

likeプラグインは、likeが作成されたURLのみを返します。ユーザー情報を取得するには、fb connectを使用する必要があります。ユーザーがアプリケーションを受け入れたら、アクセストークンを使用してユーザー情報を取得できます。

詳細については、こちらをご覧ください:https ://developers.facebook.com/docs/howtos/login/getting-started/

于 2013-02-11T13:15:28.647 に答える