gpt4 book ai didi

facebook-graph-api - session 已失效,因为用户已更改密码 -> 未更改密码

转载 作者:行者123 更新时间:2023-12-04 12:58:59 24 4
gpt4 key购买 nike

亲爱的 Stackoverflowianers!
亲爱的 Facebook 开发者!

几周前我创建了一个 Facebook 应用程序。这一次它完美地工作。我的 PHP 脚本检查 access_token 是否在到期前至少 10 天(它会自动设置为一个很长的到期日期之前),如果是(如果 >= 到期日期 - 10)它会尝试为同一用户获取新的 access_token (这是我,我自己和我)。

问题是从昨天开始它给我一个错误:

Fatal error: Uncaught OAuthException: Error validating access token: The session has been invalidated because the user has changed the password.

现在我的问题是:它怎么能抛出这个错误,因为我从未在 FB 上更改过密码???

有没有人对我解决这个问题的正确方向有任何提示?我会非常感谢任何帮助。

此致,

王牌线

最佳答案

实际上,您的流程没有任何问题。当 token 过期时,它实际上会抛出该错误。

我们以前遇到过这种错误,我们所做的是定期检查 accessToken如果不是,则仍然有效,然后我们生成并保存一个新的。但是,当我们设置 accessToken在将 token 保存到本地数据库之前,我们还将使用它来延长 token 的生命周期。见 extendedAccessToken

这是一个示例更新(这只是一个粗略的代码):

// Set the access token and extend it
$facebookClient = new FacebookClient();
$facebookClient->setAccessToken($accessToken);
$facebookClient->setExtendedAccessToken();

// Query your user that will have the updated access token and update it.
$user = User::get($userId);
$user->accessToken = $facebookClient->getAccessToken();
$user->update();

关于facebook-graph-api - session 已失效,因为用户已更改密码 -> 未更改密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17541773/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com