OAuth Google回调引发错误“对localhost的连接尝试被拒绝”

时间:2015-10-29 18:58:52

标签: node.js oauth google-oauth passport.js passport-google-oauth

我是node.js的新手,我正在尝试使用OAuth 2.0Google实施passport.js

我有来自Google Developer Console的clientIDclientSecretAuthorized Redirect URLs。回调网址类似于http://localhost:portNumber/foo/bar/callback,当我从我的机器上运行它时,应用程序运行正常。

当我尝试使用公共IP地址通过Internet访问它时,会出现此问题。我可以访问我的网站,但只要我允许我的应用程序使用Google+访问我的OAuth个人资料,就会出现错误connection attempt to localhost was rejected。它为我的回调URL提供了ERR_CONNECTION_REFUSED错误。

我被困住了,因为我现在没有域名而不是localhost

请原谅我,如果我的问题含糊不清,任何帮助都会受到赞赏。

P.S:我已经转发了我的端口。

1 个答案:

答案 0 :(得分:1)

根据我上面的评论中的建议,您可以使用localtunnel.me

  1. 在工作站上安装localtunnel模块:npm install -g localtunnel
  2. 照常运行您的网络服务器:node app.js
  3. 为您的网络服务器运行隧道:lt --port 30003000是服务器侦听的端口)
  4. 从上方运行隧道后,您将收到一个返回的网址:https://glsjjuobon.localtunnel.meglsjjuobon是随机生成的字符串)
  5. 使用上述网址在您项目的Google开发者控制台中添加其他授权重定向URI https://glsjjuobon.localtunnel.me/connect/google/callback
  6. 那就是它!只要您的本地服务器和隧道都在运行,您就可以使用localtunnel生成的网址访问您的网站。