1

ユーザーが自分のサイトで Facebook でログイン ボタンをクリックすると、JS SDK を使用してリクエスト ダイアログ マルチが表示されます。ユーザーが招待を送信した後、または要求ダイアログをキャンセルした後、ユーザーをリダイレクトして、サイトで彼または彼女の署名に進むことができるようにします。

button = document.getElementById('fbc-login-button');
    button.onclick = function() {

        FB.getLoginStatus(function(response) {
            if (response.authResponse) {
                sendRequestViaMultiFriendSelector(response.authResponse.accessToken);
            }
            else {
                FB.login(function(response) {
                    if (response.authResponse) {
                        sendRequestViaMultiFriendSelector(response.authResponse.accessToken);
                    }}, {scope: 'email'});
            }

        });

    };

    function sendUserToLoginProcess(accessToken){
        var fb_signin_url = '<?php echo CustomLocal_Resource_Url_Process::userSignin() ?>?command=<?php echo CustomLocal_Logic_Customer_User::COMMAND_FB_SIGNIN ?>&url_redirect=<?php echo Custom_Resource_Url_Customer::main(); ?>&url_redirect_fail=<?php echo Custom_Resource_Url_Customer::signin(); ?>';
        this.location = fb_signin_url + '&token=' +  accessToken;
    };

    function sendRequestViaMultiFriendSelector(accessToken) {
        FB.ui({method: 'apprequests',
            message: 'My Great Request'
        }, sendUserToLoginProcess(accessToken));
    }
4

1 に答える 1

0

だから私はこのコードでそれを手に入れることができると思います:

    button = document.getElementById('fbc-login-button');
    button.onclick = function() {

        FB.getLoginStatus(function(response) {
            if (response.authResponse) {
                sendRequestViaMultiFriendSelector(response.authResponse.accessToken);
            }
            else {
                FB.login(function(response) {
                    if (response.authResponse) {
                        sendRequestViaMultiFriendSelector(response.authResponse.accessToken);
                    }}, {scope: 'email'});
            }

        });

    };

    function sendUserToLoginProcess(accessToken){
        var fb_signin_url = '<?php echo CustomLocal_Resource_Url_Process::userSignin() ?>?command=<?php echo CustomLocal_Logic_Customer_User::COMMAND_FB_SIGNIN ?>&url_redirect=<?php echo Custom_Resource_Url_Customer::main(); ?>&url_redirect_fail=<?php echo Custom_Resource_Url_Customer::signin(); ?>';
        this.location = fb_signin_url + '&token=' +  accessToken;
    };

    function sendRequestViaMultiFriendSelector(accessToken) {
        FB.ui({method: 'apprequests',
            message: 'Shop with me!'
        }, 
        function(response)
        {
            sendUserToLoginProcess(accessToken)
        });
    }

コールバック関数 (応答) を使用して sendUserToLoginProcess() をトリガーし、次にリダイレクトしてユーザーをサインインさせました。しかし、私は応答変数を実際には使用していないので、それで問題ないことを願っています。

于 2012-10-10T02:25:51.093 に答える