2011-02-23 8 views
5

내 웹 사이트에 Facebook 연결을 사용하려고합니다. 일반 사용자로 로그인을 시도하면 정상적으로 작동합니다. 모든 올바른 정보가 다시 나타납니다. 그러나 "PAGE"계정으로 로그인하면 상황이 이상해집니다. 로그인이 성공한 후 다음을 사용하는 경우 : https://graph.facebook.com/me/?access_token= {액세스 토큰}, 나는 "false"를 반환합니다. 대신 "me"를 페이지 계정의 ID로 바꾼다면 올바른 정보를 다시 얻을 수 있습니다.페이 스 그래프 API가 페이지 계정에 대해 false를 반환합니다.

또 다른 문제는 로그인 후 "PAGE"계정으로 로그인 한 후 fbs_appID 세션 쿠키가 잘못된 "uid"를 설정하고 있다는 것입니다. 모두 정상적인 사용자 계정으로 정상입니다.

내 페이지의 모든 설정은 "13+"이며 국가 제한이 없습니다.

아무도 도와 줄 수 있습니까?

답변

-1

로그인 부분에 문제가 있다고 생각합니다.

당신은 자바 스크립트 SDK를 사용하는 경우 :

$session = $facebook->getSession(); 
print_r($session); 

을 그리고 당신은 적절한을 얻는 경우 콘솔에서 확인하십시오 다음 시도 :

는이 console.dir(FB.getSession());

당신이 PHP SDK를 사용하는 경우 시도 세션 또는 아닙니다.

http://graph.facebook.com/me은 로그인 할 때까지만 사용할 수 있습니다. 추가 권한이 필요하지 않습니다.

1

우리는 같은 행동을하고 있습니다.

Facebook 페이지로 로그인하는 동안 로그인하는 경우 Facebook은 일반적으로 "Facebook 페이지로 로그인 할 수 없습니다 .xxx 사용자로 전환"과 같은 대화 상자를 표시합니다.

FB 연결 코드에 일반 사용자가 있어야합니다.

하지만 페이스 북에서 제대로 처리하지 못하는 것 같아서 사용자가 페이스 북 페이지로 로그인하도록 허용합니다. 그러면 액세스 코드로 인해 사용자 정보를 얻을 수 없습니다.

그래서 내가 할 수있는 일은 없다고 생각합니다. 사용자에게 일반 사용자 Facebook 프로필로 로그인해야한다고 경고합니다.

이 전체 트래픽 우리가 얻는 정보입니다 : (익명의 코드로) :

 
GET /oauth/access_token?client_id=xxxxx&redirect_uri=xxxxx&client_secret=xxxx&code=xxx HTTP/1.1 
Connection: close 
Host: graph.facebook.com 


HTTP/1.1 200 OK 
Cache-Control: private, no-cache, no-store, must-revalidate 
Content-Type: text/plain; charset=UTF-8 
Expires: Sat, 01 Jan 2000 00:00:00 GMT 
Pragma: no-cache 
X-FB-Rev: 401390 
X-FB-Server: 10.42.17.21 
Connection: close 
Date: Wed, 06 Jul 2011 10:38:11 GMT 
Content-Length: 122 

access_token=xxxx&expires=4909 



GET /me?access_token=xxxx HTTP/1.1 
Connection: close 
Host: graph.facebook.com 

HTTP/1.1 200 OK 
Cache-Control: private, no-cache, no-store, must-revalidate 
Content-Type: text/javascript; charset=UTF-8 
ETag: \"7cb6efb98ba5972a9b5090dc2e517fe14d12cb04\" 
Expires: Sat, 01 Jan 2000 00:00:00 GMT 
P3P: CP=\"Facebook does not have a P3P policy. Learn why here: http://fb.me/p3p\" 
Pragma: no-cache 
X-FB-Rev: 401390 
Set-Cookie: datr=aTsUTlxHtaaaK67aCdYmQbCO; expires=Fri, 05-Jul-2013 10:39:37 GMT; path=/; domain=.facebook.com; httponly 
X-FB-Server: 10.32.3.116 
Connection: close 
Date: Wed, 06 Jul 2011 10:39:37 GMT 
Content-Length: 5 

false 
-3

페이지 설정에서 모든 나이 및/또는 국가 제한을 제거합니다.

1

페이지 설정에서 "기본"국가 제한이 제거되었으며 그래프 API를 통해 데이터가 정상적으로 나타납니다. 그것이 API 요청에 영향을 미치는 이유를 아는 것이 좋을 것입니다.

관련 문제