私はこれを機能させるために私のウィットエンドにいます。以前は使っていましたが、どういうわけかまた壊れたようです。ローカルで開発するときだけ問題があります。Facebookのローカル開発で現在同様の問題を抱えている人は他にいますか?
これらは私のステップです:
- アプリを作成する
- [基本情報]セクションで、ドメインとして[localhost]を設定します(これも空白のままにしてみました)
- 私のウェブサイトをに設定します
http://localhost:8080/
- サンドボックスモードがオフになっていることを確認します
- 私のローカルサーバーはJavascriptを実行し
http://localhost:8080/private/
ており、基本的には次のようになります。 - また、localhostの代わりに(myapp.comなど)を使用して、127.0.0.1にマップされたetc / hostsファイルで定義し、App Domainを「myapp.com」に設定してサイト「http://myapp」を使用してみました。 com:8080/'運がない。
FB.getLoginStatus()呼び出しが返されないか、たまにしか返されません。常に本番サーバーで動作します。
function myAppInit() {
console.log("Facebook loaded; initializing sdk.");
//Initialize FB SDK
FB.init({
appId:_FbAppId, //This is valid and matches app ID
cookie:true,
status:true,
xfbml:true,
oauth:true
});
//Query for login status.
FB.getLoginStatus(function(response) {
updateLoginStatus(response); //This is hit randomly
});
//Set our standard callback for auth change status
FB.Event.subscribe('auth.authResponseChange', function(response) {
updateLoginStatus(response); //This is hit randomly
});
}
$(document).ready(function(){
window.fbAsyncInit = myAppInit;
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
}
編集:FB.getLoginStatus(..)の応答を確認した後、これを返します:
指定されたURLはアプリケーション構成で許可されていません:指定されたURLの1つ以上がアプリケーション構成で許可されていません。ConnectまたはCanvasURLの1つと一致するか、ドメインがアプリケーションのベースドメインの1つのサブドメインと同じであるかサブドメインである必要があります。