2012-08-29 97 views
2

我正在使用Gooogledrive API與php.Using它我已經從憑證部分檢索Refresh令牌.accesstoken在3600秒後過期。我的問題是如何從新的accesstoken此刷新token.I已經使用在谷歌PHP客戶端library.I給出的方法調用了refreshtoken(「refreshtoke」)的apiclient.My碼功能是繼使用已在googledrive api中檢索到的refreshtoken獲取新accesstoken

$client = new apiClient(); 
$client->setClientId('my-client-id'); 
$client->setClientSecret('my client-secret-key'); 
$client->setRedirectUri('my redirect uri'); 



$client->refreshToken('MY-retrieved-refresh-token'); 

,但我得到了以下錯誤: - 未捕獲的異常'apiAuthException'消息'錯誤刷新OAuth2令牌,消息:'{「error」:「invalid_grant」}。**

請幫幫我。一切休息的作品fine.But的accessToken3600秒到期後,不刷新

+0

你設置你的訪問和刷新令牌?我沒有看到行$ client-> SetAccessToken($ tokens),其中$ token是jSON中的訪問和刷新標記。 – vicrabb

+1

謝謝vicrabb.I明白了你的觀點。 –

+0

難道還是你還有問題? – vicrabb

回答

1

//之後這行代碼

$client->refreshToken('MY-retrieved-refresh-token'); 

//做到這一點

$token = $client->getAccessToken(); 

//這將給你json編碼字符串,它將有權訪問,刷新令牌和承載等。

+0

哦,我的....經過近一個月的調試這個問題後,我有這兩行倒退。在切換它們之後,事情現在可以正常工作,而無需在訪問令牌每次過期時重新進行身份驗證。非常感謝你發佈這個喬希。 – EHerman

相關問題