php - Facebook API 已更改

标签 php facebook facebook-graph-api

我正在尝试使用离线 token 让用户登录 facebook(我已经使用了很长时间),但 facebook 似乎改变了一些东西?

快速运行: 我通过 OAuth 进行了 Facebook PHP SDK (2.1) 身份验证。我记得获得访问 token 后的返回数据类似于:

callbackurl?session={access_token:....,expires:....,session_key....}

等等...基本上是 URL 中的 JSON 对象。

但现在看来他们已经更改了参数,我得到的只是这样的:

[fb_199972360033499_access_token] What are these digits?
[fb_199972360033499_user_id]

(我尝试过(PHP SDK 2.1 和 3.1.1)

之前我使用

存储设置已保存的 token 数据
$facebook->setSession($dataArray); 

但现在我不再知道该怎么办,如果有人有任何关于在哪里查看的线索,我会很感激,因为我很难在实际的 FB 文档中找到正确的说明。

最佳答案

新的 PHP SDK

有关使用新 PHP SDK 的示例,您应该查看:

https://github.com/facebook/php-sdk

http://developers.facebook.com/blog/post/534/

查看源代码也是一个好主意。

离线访问

http://developers.facebook.com/docs/authentication/

如果您有授权用户,您现在可以通过以下方式获取用户access_token:

$access_token = $facebook->getAccessToken();

如果没有可用的授权用户,它将返回应用程序访问 token 。

If your app needs an access token with an infinite expiry time (perhaps to take actions on the user's behalf after they are not using your app), you can request the offline_access permission.

获取用户ID:

$user_id = $facebook->getUser();

应用程序 ID

[fb_199972360033499_access_token] What are these digits?

这些数字应该是您的应用程序 ID。

持久数据

$facebook->setSession($dataArray);

这应该不再是必要的,因为 PHP SDK 会处理这个问题。除非您想存储自己的数据 - 在这种情况下您应该创建自己的 session 数据。

关于php - Facebook API 已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7114004/

相关文章:

php - 从 yii 2 中的其他表按计数(*)排序

php - 创建具有多个可选搜索字段的 MYSQL 查询

android - 不使用 Graph Api 获取任何事件

ios - 我如何从 Facebook 用户 ID 获取 Facebook 访问 token ?

facebook - Instagram Insight Metrics 与 Facebook Graph API

php mysql输入仅将零保存到db

iphone - Facebook 图形 API 与 native iPhone 应用程序

Facebook API 2.3 的新 publish_pages 权限——我需要它吗?

facebook - 事件名称有什么要求?

js文件中的php Wordpress