首页 >后端开发 >php教程 >在'offline_access”权限弃用后,如何延长 Facebook 访问令牌的有效性?

在'offline_access”权限弃用后,如何延长 Facebook 访问令牌的有效性?

Linda Hamilton
Linda Hamilton原创
2024-11-25 11:00:12431浏览

How Can I Extend Facebook Access Token Validity After the `offline_access` Permission Deprecation?

在没有offline_access权限的情况下扩展访问令牌的有效性

自从Facebook的身份验证流程中弃用offline_access权限以来,扩展了访问令牌的有效性已成为一项挑战。尽管文档表明服务器端 OAuth 生成的访问令牌应该具有延长的有效期,但事实并非如此。

为了解决此问题,base_facebook.php 文件中添加了一个新函数。 getExtendedAccessToken() 函数允许开发者获取 60 天内过期的新访问令牌。

用法:

要使用此函数,只需添加以下内容将代码写入您的 base_facebook.php 文件并调用它:

public function getExtendedAccessToken(){
    // OAuth request to obtain extended access token
    $access_token_response = $this->_oauthRequest(
        $this->getUrl('graph', '/oauth/access_token'), array(
            'client_id' => $this->getAppId(),
            'client_secret' => $this->getAppSecret(),
            'grant_type' => 'fb_exchange_token',
            'fb_exchange_token' => $this->getAccessToken()
        )
    );
}

重要提示:

必须在开发者应用程序的高级设置中启用“弃用offline_access”才能使用此功能。

更新了 SDK功能:

截至2012年8月14日,官方Facebook PHP SDK已更新。函数名称已更改为 setExtendedAccessToken,并且 SDK 现在将扩展访问令牌存储在持久数据中而不是返回它。要检索新的访问令牌,请使用 getAccessToken() 函数。

以上是在'offline_access”权限弃用后,如何延长 Facebook 访问令牌的有效性?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn