我最近尝试将laravel socialite与laravel 5.5集成,但我收到了一个错误:
GuzzleHttp \ Exception \ ClientException(400)客户端错误:
GET https://graph.facebook.com/v2.10/me? access_token=$my_token&appsecret_proof=my_proofsecret
导致了400 Bad Request
回复:{"错误":{"消息":"错误验证 访问令牌:会话已于星期二,03-Oct-17 05:00:00到期 太平洋夏令时。当前(截断...)
现在我已经在某种程度上调试了它,基本上这是在FacebookProvider.php line number 89
中创建错误的行:
protected function getUserByToken($token)
{
$meUrl = $this->graphUrl.'/'.$this->version.'/me?access_token='.$token.'&fields='.implode(',', $this->fields);
if (! empty($this->clientSecret)) {
$appSecretProof = hash_hmac('sha256', $token, $this->clientSecret);
$meUrl .= '&appsecret_proof='.$appSecretProof;
}
$response = $this->getHttpClient()->get($meUrl, [
'headers' => [
'Accept' => 'application/json',
],
]);
return json_decode($response->getBody(), true);
}
这是一行:
$appSecretProof = hash_hmac('sha256', $token, $this->clientSecret);
如果我把它评论出来,如果其他阻止它似乎工作正常,不能弄清楚什么是错的。