私はasp.net Webサイトをfacebookアプリケーションとして開発しています。FB.getLoginStatusを呼び出さずにfacebookユーザーIDを取得し、公開情報のためにユーザーにアクセス権を与える方法
私は "Facebook Like Gate"をプロンプトにしようとしています。アプリケーションを見る前に私のページのように。例えば、https://www.facebook.com/AvonProductsInc?sk=app_188308831197082。
問題は、上記のアプリケーションは私の基本情報を取得する権限を与えないが、次のコードを使用してuser_idを取得し、彼が既に持っていることを確認する前に、 :
function checkFBlike() {
//FB.login
FB.getLoginStatus(function (response) {
var r = response;
if (response.status == "connected") {
var user_id = response.authResponse.userID;
var page_id = "341342102543433"; //341342102543433 168619489865949
var fql_query = "SELECT uid FROM page_fan WHERE page_id = " + page_id + "and uid=" + user_id;
var the_query = FB.Data.query(fql_query);
the_query.wait(function (rows) {
if (rows.length == 1 && rows[0].uid == user_id) {
//jQuery("#container_like").show();
fbLikeGateHide();
//here you could also do some ajax and get the content for a "liker" instead of simply showing a hidden div in the page.
}
else {
//and here you could get the content for a non liker in ajax...
}
});
} else if (response.status === 'not_authorized') {
// the user is logged in to Facebook, but not connected to the app
showFbLogin(); //display Facebook Login button
}
else {
// user is not logged in
}
});
}
function showFbLogin(){
FB.login(function(response) {
var r=response;
});
}
感謝を。しかし、私は私のweb.configに次のコードを追加した後: –
最後に私の問題を解決しました - 質問は私のWebサイトでリダイレクトしていました。 –