使用php的google api中出现无效api密钥权限被拒绝错误
我第一次使用GoogleAPI时,我的代码执行得非常完美,甚至使用PeopleServiceAPI给我提供数据……但第二次它给了我以下错误 类型:谷歌服务例外 消息:{“错误”:{“代码”:403,“消息”:“请求丢失” 有效的API键。“,”错误“:[{”消息“:”请求缺少 有效的API密钥“,”域“:”全局“,”原因“:”禁止“}], “状态”:“权限被拒绝”} 我正在使用codeignitor,这是重定向uri控制器函数…提前感谢,抱歉英语不好使用php的google api中出现无效api密钥权限被拒绝错误,php,codeigniter,google-api,Php,Codeigniter,Google Api,我第一次使用GoogleAPI时,我的代码执行得非常完美,甚至使用PeopleServiceAPI给我提供数据……但第二次它给了我以下错误 类型:谷歌服务例外 消息:{“错误”:{“代码”:403,“消息”:“请求丢失” 有效的API键。“,”错误“:[{”消息“:”请求缺少 有效的API密钥“,”域“:”全局“,”原因“:”禁止“}], “状态”:“权限被拒绝”} 我正在使用codeignitor,这是重定向uri控制器函数…提前感谢,抱歉英语不好 $client = $this->go
$client = $this->google_client_setup();
$client->authenticate($this->input->get('code'));
$access_token = $client->getAccessToken();
$people_service = new Google_Service_PeopleService($client);
$profile = $people_service->people->get(
'people/me', array('personFields' => 'names,emailAddresses'));
$access_token = $access_token['access_token'];
$email = $profile['emailAddresses'][0]['value'];
$name = $profile['names'][0]['displayName'];
$user = [
'email' => $email,
'name' => $name,
'is_admin' => 0
];
很难说,但我认为,如果它说它缺少有效的api密钥,您应该将其视为答案;) 第一次跑步后,你是否被重定向到了某个地方?这可以解释哈维尔评论的问题 我建议转储两件事来调试代码:
$this->input->get('code')
如果这样可以,那么
$access_token
这会让你知道你的问题是什么:)
祝你好运 如果看不到控制器的其余部分并且不知道它是如何调用的,很难判断,但是很可能在第二次运行时,您没有通过
GET
获得code
。这将导致$client
无法正确设置,然后在使用它的所有设备上都会出现异常行为,但我的代码第一次执行得非常完美..我在刷新页面时出现此错误这正是我的观点。。。在第一次运行时,您似乎通过GET
正确地传递了变量,但在刷新页面时没有正确传递,而且两次都正确地设置了变量?