loading
Please wait while loading...
返回 Google Oauth 2.0 每次登入皆需重新授權

之前制作了一個web app使用了google帳戶作登入驗証。參考google官方的例子,制作這個Login的功能並不難。可是我遇到一個問題就是每次按下登入後,頁面都會重定向到google並且要求用戶授權,這實在是有點麻煩,如果大家有用過facebook login之類的功能,都知道這類OpenID的登入服務是只會在第一次登入時要求授權,往後登入便會自動完成,google的登入又怎麼可能那麼煩人呢?於是我嘗試到網上尋找答案,終於找到了解決方法:

要讓你的google login只在第一次登入時向用戶要求授權,只需加上以下代碼便可

$client->setApprovalPrompt(auto);
 

一段較詳細的Login授權代碼如下:

require_once('src/Google_Client.php');
require_once 'src/contrib/Google_Oauth2Service.php';
$client = new Google_Client();
if ($client->getAccessToken()) {
  //alwaydy login redirect to user account
} else {
  $client->setApprovalPrompt(auto);
  $authUrl = $client->createAuthUrl();
}
Comments
comments powered by Disqus