2

彼らから提供されたJsファイルを使用してFacebookアプリを構築しようとしています。

アプリにユーザー登録を取得することはできますが、フィードを壁に投稿する必要があります(また、ユーザーの承認のための事前確認メッセージは必要ありません。ユーザーは自分のアカウントにのみログインする必要があります)。

以下はコードです:

<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script>

FB.init({ appId: '<%: Facebook.FacebookApplication.Current.AppId %>', status: true, cookie: true, xfbml: true });
    var userName;


    FB.login(function (response) {
        //alert('1');
        if (response.authResponse) {
            var access_token = FB.getAuthResponse()['accessToken'];
            //alert('Access Token = ' + access_token);
            FB.api('/me', function (response) {
                alert('Good to see you, ' + response.name + '.');
                userName = response.name;
                document.getElementById('btnPostFeed').style.display = 'block';

            });
        } else {
            document.getElementById('btnPostFeed').style.display = 'none';
            //console.log('User cancelled login or did not fully authorize.');
        }
    }, { scope: '' });    

 function SubmitPost(msg) {
try {
    if (userName != null || typeof userName != 'undefined') {
        var wallPost = {
            message: msg + " By : " + userName,
            picture: '',
            link: '',
            name: 'test app posted in your wall',
            caption: '',
            description: ('Test description')
        };
        FB.api('/me/feed', 'post', wallPost, function (response) {
            if (!response || response.error) {
                /*action*/
                alert('Message could not be Posted.');
                alert(response.error.message);
            } else {
                /*action*/
                alert('Message Posted successfully.');
            }
        });
    }
    else {
        alert('Please wait while User Info is Loaded..');
    }
}
catch (err) { alert('SubmitPost: ' + err); }

私の主な問題は次のとおりです。 取得(#200)ユーザーがアプリケーションにこのアクションの実行を許可していません

以下は、アプリ登録のスクリーンショットです。 ここに画像の説明を入力してください

私はこれのために何をすべきですか?

4

1 に答える 1

1

この行のスコープは完全に空です

}, { scope: '' });

正しい許可を要求しない場合、許可されません。

しかし、私は彼らの壁にフィードを投稿する必要があります(また、ユーザーの承認のための事前確認メッセージは必要ありません。ユーザーは自分のアカウントにのみログインする必要があります)。

これは意味がありません。ユーザーは自分のウォールに投稿することを承認する必要があります。彼らがログインするだけの場合、彼らはあなたに彼らの壁への投稿を除いて最も基本的な許可を与えるだけです。

于 2013-06-12T23:02:01.987 に答える