首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google-oauth回调可以在桌面浏览器上运行,但不能在移动浏览器上运行

Google-oauth回调可以在桌面浏览器上运行,但不能在移动浏览器上运行
EN

Stack Overflow用户
提问于 2019-04-06 07:44:06
回答 1查看 158关注 0票数 0

我已经设置了google_oauth_client,并使用passport.js实现了google_authentication,并将我的应用程序部署到了heroku。身份验证在桌面浏览器上工作,但我在移动设备上的浏览器上收到redirect_uri_mismatch错误。

我对这个问题进行了研究,但在互联网上并不多见。我试着从几台台式机、电脑和所有设备上进行身份验证。但是,相同的操作会给出来自任何移动设备的错误。

我不确定我是否需要在这里显示代码,但这里有来自我的手机和Oauth_client的错误快照。这里还有我在heroku中部署的应用程序的链接

mobile error

google_oauth_client_setup

EN

回答 1

Stack Overflow用户

发布于 2019-04-06 22:01:14

对于那些可能会遇到这个问题的人。修复实际上相当简单。移动浏览器不理解我下面的这个GoogleStrategy设置:

代码语言:javascript
复制
    clientID: keys.googleClientID,
    clientSecret: keys.googleClientSecret,
    callbackURL: '/auth/google/callback',
    proxy: true

你将不得不做这样的事情。确保您的配置文件具有Heroku域的绝对路径,而不是像在keys.redirectURI中那样直接调用它

代码语言:javascript
复制
    clientID: keys.googleClientID,
    clientSecret: keys.googleClientSecret,
    callbackURL: keys.redirectURI + '/auth/google/callback',

我认为问题出在“proxy.true”上。也许谷歌没有正确地代理移动浏览器。正如你将从我上面的屏幕截图中看到的那样,它试图重定向到http,而不是https。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55544599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档