Google OAuth 2.0的“错误" :"redirect_uri_mismatch"; [英] Google OAuth 2.0 "error" : "redirect_uri_mismatch"

查看:95
本文介绍了Google OAuth 2.0的“错误" :"redirect_uri_mismatch";的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经度过了一天,摔倒了一杯酒,对此我真的很生气,我不明白Google向我要什么,怎么了.

I spend already one day, crashed one glass and I am really angry about it, I do not understand what google want from me, and what is wrong.

我已在开发人员控制台中启用了Google+ Api , 创建了新的OAuth客户端ID

I've enabled Google+ Api in developers console , created new OAuth Client ID

    $ch = curl_init('https://accounts.google.com/o/oauth2/token');
curl_setopt($ch,CURLOPT_POSTFIELDS,'code=4%2FPp1GWqC6PIr3wNYrZ5kK4T9oitxBoo0fBqBrVNQfE-g.ElKDUjQ7E28SoiIBeO6P2m-0RPaolgI&grant_type=authorization_code&redirect_uri=https%3A%2F%2Fmyprivatedomain.local.com%2Foauth2callback&client_id=%mycliet_id%&client_secret=%mysecret%');
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, true);
var_dump(curl_exec($ch));

在此处的说明中创建了所有类似内容: https://developers.google .com/+/web/signin/server-side-flow ,gplus按钮出现在页面上,它成功请求了授权用户的访问.但是当我执行步骤8 步骤8:初始化Google API客户端库并启动Google+服务 我的请求每次都得到回复错误":"redirect_uri_mismatch"

created all like in instructions here: https://developers.google.com/+/web/signin/server-side-flow, gplus button appear on page, and it successfully request access for authorized user. but when I made step 8 Step 8: Initialize the Google API client library and start the Google+ service my request every time get response "error" : "redirect_uri_mismatch"

我知道,当您未在Google控制台中注册redirect_uri或在其中输入类型错误但我注册了该错误时,就会出现此错误,并且只是为了测试而试图设置不同的网址(更改的域名,将协议从https更改为https),但是它永远无法正常工作!我不知道我还能检查什么,请至少提供一些建议.

I know, that this error appear when you do not registered redirect_uri in Google Console, or when you make a type mistake in it, but I registered it, and also just for testing tried to setup different urls (changed domain names, changed protocols from https to https), but it never working! I have no idea what else I can check, please advice at least something.

推荐答案

文档在步骤1中说.redirect_uri参数值设置为postmessage.

The docs say in Step 1. https://developers.google.com/+/web/signin/server-side-flow#step_1_create_a_client_id_and_client_secret that there must be no redirect URIs configured, only "Authorized JavaScript origins". In the authorization request and the token exchange, the redirect_uri parameter value should be set to postmessage.

对此的现有技术: Google OAuth 2授权-错误:redirect_uri_mismatch

这篇关于Google OAuth 2.0的“错误" :"redirect_uri_mismatch";的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆