我們正在獲得同樣的行爲。
如果以Facebook頁面的身份登錄,Facebook通常會顯示一個對話框,顯示「您無法以Facebook頁面登錄。切換至xxx用戶」。
所以你應該總是讓你的FB連接代碼中的普通用戶。
但它看起來像有時Facebook不能正確處理,並允許用戶嘗試登錄爲Facebook頁面。然後您獲得的訪問代碼不允許您獲取用戶信息。
所以我認爲你不能做任何事情,只是警告用戶,他必須以普通用戶Facebook Profile登錄。
這是一個完整的交通信息,我們得到:(與匿名代碼):
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