在https://code.google.com/apis/console网站上,我已经注册了我的应用程序,设置生成的客户端ID:和客户端秘密到我的应用程序,并尝试登录谷歌。
不幸的是,我收到了错误信息:
Error: redirect_uri_mismatch
The redirect URI in the request: http://127.0.0.1:3000/auth/google_oauth2/callback did not match a registered redirect URI
scope=https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email
response_type=code
redirect_uri=http://127.0.0.1:3000/auth/google_oauth2/callback
access_type=offline
approval_prompt=force
client_id=generated_id
这条信息是什么意思,我该如何修复它?
我使用宝石omniauth-google-oauth2。
2015年7月15日-上周在登录时使用这个脚本工作的登录
<script src="https://apis.google.com/js/platform.js" async defer></script>
停止工作并开始导致Error 400 with Error: redirect_uri_mismatch
然后在DETAILS部分:redirect_uri=storagerelay://…
我把它改成:
<script src="https://apis.google.com/js/client:platform.js?onload=startApp"></script>
如果你正在使用passport js,你正在heroku中部署你的应用程序,你需要在passport策略中添加这个设置proxy: true
passport.use(new GoogleStrategy(
{
clientID: keys.googleClientID,
clientSecret: keys.googleClientSecret,
callbackURL: '/auth/google/callback',
proxy: true
})
或检查您的授权url
必须是https://yourwebsite/auth/google/callback