다음 JS 코드가 있습니다.Facebook Javascript, 사용자가 내 페이스 북 페이지의 팬인지 여부를 감지하는 방법? 내 사이트에있는 동안?
코드의 목적은 먼저 사용자에게 facebook id를 부여한 다음 FQL을 사용하여 해당 ID를 내 페이지 ID와 대조하여 사용자가 팬인지 확인하는 것입니다.
내가 겪고있는 문제는 코드가 실제로 작동하는 유일한 시간은 내 개인 페이스 북 프로필로 로그인하는 것입니다. 나는 내 프로필과 FB.init appid가 어떻게 든 연결되어 있기 때문에 그것을 생각하십니까?
누군가이 코드를 살펴보고 내가 잘못 가고있는 곳을 보여줄 수 있습니까?
나의 목표는 JS를 사용하여 먼저 사용자 ID (따라서 축소판 이미지)를 얻은 다음 내 자신의 페이스 북 페이지와 대조하여 그들이 팬인지 확인합니다. 그들이 facebook 팬인 경우에, 나는 그 (것)들에게 쿠폰 또는 무언가를 아마 줄 것이다.
미리 감사드립니다. 사용자가 없습니다 페이스 북에 .. 응용 프로그램에 연결되어있는 경우
<script src="http://connect.facebook.net/en_US/all.js"></script>
//Connect to facebook with my app id..
FB.init({
appId:'135445813195028',
cookie:false,
status:true,
xfbml:true
});
//Check to see if user is actually CONNECTED???
FB.getLoginStatus(function(response) {
if (response.session) {
// USER IS CONNECTED
FB.api('/me', function(user) {
if (user != null) {
var image = document.getElementById('imagez');
image.src = 'http://graph.facebook.com/' + user.id + '/picture?type=large';
var name = document.getElementById('name');
name.innerHTML = user.name;
FBID = user.id;
console.log('Facebook ID:' + FBID);
//assemble an FQL query to see if the guy is a fan of our page...
myquery = 'SELECT uid FROM page_fan WHERE page_id = 126923080686340 AND uid = ' + FBID;
console.log('query = ' + myquery);
///Run FQL Query to see if user is a fan
FB.api({
method: 'fql.query',
query: myquery
}, function(resp) {
if (resp.length) {
var IsFan = true;
alert('You are A fan!')
console.log('Visitor is a fan');
//show coupon code...
} else {
alert('Signed into facebook, but Not a fan!');
var IsFan = false;
console.log('Visitor is not a fan');
//show like button...
//once like is clicked then refresh the page...
}
});
//END Run FQL Query to see if user is a fan
}
});
//Figure out if they are a fan...
} else {
// USER IS NOT CONNECTED
alert('NO USER session, user is not logged into facebook!!!');
}
});
확실히 말할 수는 없지만 사용 권한 문제로 생각됩니다. 페이스 북은 권한없이 (예를 들어 앱을 통해) 사용자의 페이지를 확인할 수 없기를 원할 것이다. – n00dle
잘하면 당신은 할 수 없습니다. 그것은 당신의 사업이 아닙니다. –
FB에서 허용하는 경우 말할 수는 없지만 다른 사람이나 다른 시도에서 콘솔을 사용하도록 설정 했습니까? 그렇지 않으면'console.log' 명령이 실패하고 JS가 중지됩니다. –