JavaScriptからのアクセストークン
-
27-10-2019 - |
質問
私はFacebookにかなり初めてで、壁に書き込む簡単なダイアログを表示しようとしています...しかし、運がありません... :-(
私はこれを試しました:
<!DOCTYPE HTML>
<html xmlns:fb="https://www.facebook.com/2008/fbml">
<body>
<script src="http://connect.facebook.net/da_DK/all.js"></script>
<div id="fb-root"></div>
<script>
FB.init({appId: '172225549532081', xfbml: true, cookie: true});
FB.getLoginStatus(function(response) {
if (response.authResponse && response.status=="connected") {
console.log("loged in");
} else {
console.log("not logged in");
}
});
FB.ui({
display: 'iframe',
method: 'feed',
name: 'Facebook Dialogs',
link: 'http://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
description: 'Dialogs provide a simple, consistent interface for applications to interface with users.'
});
</script>
</body>
</html>
しかし、Facebookにログインしていても、常に「ログインしていない」ログを記録します。ダイアログがこのエラーを与えてくれます。
API Error Code: 102
API Error Description: Session key invalid or no longer valid
Error Message: Iframe dialogs must be called with a session key
私はすべてを検索しましたが、私は取得する方法がわかりません access token
どこでも。
私は何が間違っているのですか?
前もって感謝します...
解決
これを試して:
FB.login(function(response) {
if (response.authResponse) {
console.log('Logged in');
} else {
console.log('Not logged in');
}
});
ユーザーがFacebook.comにログインしているからといって、サイトに自動的にログインしていません。最初にアプリを使用して、ドメインで認証する必要があります。ログイン関数が何かをクリックした後、ポップアップを引き起こすため、ログイン関数を呼び出す必要があります。
他のヒント
ユーザーはアプリに接続されていますか?
ユーザーがアプリに接続されていない場合は、ログインボタン(http://developers.facebook.com/docs/reference/plugins/login/)を使用して、ユーザーにアプリにログインするように依頼できます。
以下のコードは、ユーザーのステータスを確認し、必要に応じてログインボタンを表示します。
パーマ属性を設定することを忘れないでください。
FB.getLoginStatus(function(response) {
if (response.authResponse) {
// logged in and connected user, someone you know
} else {
// no user session available, someone you dont know
$('<fb:login-button></fb:login-button>').appendTo('body')
}
});
FB.ui({
display: 'iframe',
method: 'feed',
name: 'Facebook Dialogs',
link: 'http://developers.facebook.com/docs/reference/dialogs/',
picture: 'http://fbrell.com/f8.jpg',
caption: 'Reference Documentation',
description: 'Dialogs provide a simple, consistent interface for applications to interface with users.',
access_token: FB.getAuthResponse().accessToken // **This should work and tested** also!!!
});
所属していません StackOverflow