【问题标题】:Is setAccessToken necessary after refreshToken? - Google API PHP在 refreshToken 之后是否需要 setAccessToken? - 谷歌API PHP
【发布时间】:2017-05-09 23:26:12
【问题描述】:

这是我的代码:

$client = new Google_Client();
$client->setApplicationName("dayPlanner");
$client->setClientId(env('googleClientID'));
$client->setClientSecret(env('googleClientSecret'));
$client->setAccessToken(session('token'));

if($client->isAccessTokenExpired()) {
    $client->refreshToken($user->refreshToken);
    $token = $client->getAccessToken();
    session(['token' => $token]);
    $client->setAccessToken($token); // necessary..?
}

这行得通,但我不完全理解。大多数在线示例都显示了 refreshToken (以及会话数据的 getAccessToken ),但我没有看到然后再次使用 setAccessToken 。逻辑表明这是必要的,并且有效,但我想要一个明确的答案并更好地理解这一点。

(注意,用于设置/检索会话数据的 Laravel 语法)

【问题讨论】:

    标签: php oauth-2.0 google-api google-oauth google-api-php-client


    【解决方案1】:

    阅读 PHP API 代码应该可以回答您的问题。请参阅 the code

    如果您查看 getAccessToken 代码,它只会返回已经存在的“令牌”。 公共函数 getAccessToken() { 返回$this->token; } 因此,执行 setAccessToken 来设置使用 getAccessToken 接收的令牌没有多大意义。 在refreshToken设置期间(见代码),如果没有accessToken,它会更新accessToken。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-28
      • 2022-01-02
      • 2017-01-09
      • 2013-08-11
      • 1970-01-01
      相关资源
      最近更新 更多