首页 > 解决方案 > Laravel Google api 客户端获取刷新令牌并上传文件

问题描述

调用未定义的方法 GuzzleHttp\Psr7\Request::filledHeader()

这是我尝试使用刷新令牌获取访问令牌时遇到的错误。

我有 google/apiclient - ^2.0,据我所知,它适用于guzzlehttp/guzzle: ~5.3.1|~6.0

我使用 laravel socialite 并为 google 提供服务。我正在发出离线请求以从 google 获取 refresh_token 并使用它更新当前登录的用户。到目前为止一切正常。

当我尝试创建 Google 客户端的新实例并使用刷新令牌获取令牌时,出现以下错误

调用未定义的方法 GuzzleHttp\Psr7\Request::filledHeader()

$client = new Google_Client();
        $client->refreshToken(Auth::user()->getUserInfo()->refresh_token);
$this->drive = new Google_Service_Drive($client);

错误在 refreshToken 中。我错过了什么并且做得不对?

标签: laravel-5google-apiguzzle

解决方案


我的一个朋友找到了解决这个问题的方法。问题是http-message'sMessageInterafce已更新并且filledHeader()方法已重命名为hasHeader(). 将 guzzle 更新为~6.0@dev一切正常后。

"guzzlehttp/guzzle": "~6.0@dev"

推荐阅读