$data = array('code' => $code,
'client_id' => '...',
'client_secret' => '...',
'redirect_uri' => 'http://localhost/youtube/cookie_token.php',
'grant_type' => 'authorization_code');
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://accounts.google.com/o/oauth2/token');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$return = curl_exec($ch);
curl_close($ch);
echo $return;
从Google Console的截图中可以看到,URL已经在应用程序中注册了
当然你不应该在任何OAuth方案中使用"localhost"或127.0.0.1。
编辑:当然,它可能会工作,但你必须改变javascript的起源和授权重定向uri到console.developers.google.com
下的localhost的客户端id你在这里使用