【问题标题】:OAuthException using Socialite with facebook - "message": "An active access token must be used to query information about the current user.",OAuthException using Socialite with facebook - "message": "必须使用活动访问令牌来查询有关当前用户的信息。",
【发布时间】:2017-08-20 20:27:36
【问题描述】:

我已经在 Facebook 上使用 Socialite 几天了,没有问题。今天,我开始收到此错误。

{ "error": 
    { 
       "message": "An active access token must be used to query information 
        about the current user.", "type": "OAuthException",
        "code": 2500, "fbtrace_id": "FTvIz9t1LT+"
   }
}

错误似乎很简单,但我似乎无法在网上看到解决方案。有没有办法使用 Socialite 重置我的 access_token。

请注意:我非常关注这个tutorial

当我尝试获取时,错误在回调中

$userProvider try { 
    $userProvider = Socialite::driver('facebook')->user();
} catch (Exception $e) {
   Log::info('Callback Error ' . $e->getMessage());
   return Redirect::to('redirect');
}

谢谢,里奇

【问题讨论】:

  • 不熟悉这个 API,但是 OAuth 提供程序中的大多数身份验证令牌都会过期,所以如果这是 OAuth 2.0,我认为您需要一个刷新令牌。否则,用户将不得不重新登录。

标签: laravel oauth-2.0 laravel-socialite


【解决方案1】:

这也发生在我身上。我修复了它运行composer update 然后composer dump-autoload。这会将社交名流更新到 v2.0.21

干杯

【讨论】:

  • 您好,感谢您的提示,但我仍然遇到同样的问题。我验证了作曲家已将 Socialite 更新到 v2.0.21,并清除了我能找到的所有缓存,但错误消息相同。转储自动加载也是如此。您采取的任何其他步骤可能会增加您的成功吗?谢谢,丰富
  • 谢谢!也为我工作!
  • 这很有效,谢谢!但是您介意告诉我们问题的真正原因吗?
【解决方案2】:

这是因为 Facebook API v2.2 不再可用。更新 laravel/socialite 包:

composer update laravel/socialite

这样就不会影响你的其他包了。

【讨论】:

    【解决方案3】:

    我认为问题在于解析令牌,因此更改这 2 行应该可以解决问题

    https://github.com/laravel/socialite/pull/214/files#diff-b221dafd8a91f5753288a2d8603cef25

    【讨论】:

      猜你喜欢
      • 2011-08-27
      • 2013-07-22
      • 2012-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-14
      • 2011-11-26
      相关资源
      最近更新 更多