我开始使用社交帐户编写注册页面。 我试过facebook成功的工作。 当我尝试谷歌签署时,它向我显示此错误。
400. That’s an error.
Error: invalid_request
Missing required parameter: scope
Learn more
Request Details
response_type=code
redirect_uri=http://localhost/school/g.php
client_id=80808106457-e2fmm4s2dhqc5eo94nv2l84thjn6hqvl.apps.googleusercontent.com
scope=
access_type=offline
approval_prompt=force
有人请帮助我。这是我的PHP代码
<?php
session_start();
// Include Google client library
include_once 'src/Google_Client.php';
include_once 'src/auth/Google_OAuth2.php';
/*
* Configuration and setup Google API
*/
$clientId = 'XXXXXXXXXXXXXXXXXXXXXX';
$clientSecret = 'XXXXXXXXXXXXXXXX';
$redirectURL = 'http://localhost/school/g.php';
//Call Google API
$gClient = new Google_Client();
$gClient->setApplicationName('school');
$gClient->setAccessType("offline");
$gClient->setClientId($clientId);
$gClient->setClientSecret($clientSecret);
$gClient->setRedirectUri($redirectURL);
$google_oauthV2 = new Google_OAuth2($gClient);
?>
答案 0 :(得分:1)
您必须声明您希望访问的范围,例如,Gmail允许离线访问的最高权限范围:
$gClient->addScope('https://mail.google.com/');
明智地选择正确的范围时,客户端会看到您尝试访问的范围,并决定是否批准(在用户同意屏幕上完成)。
范围列表 - https://developers.google.com/identity/protocols/googlescopes
答案 1 :(得分:1)
对我来说,将“ / auth / google?scope = email”添加到锚标记是可行的。 希望这会对某人有所帮助。