问题标签 [passport-google-oauth2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
373 浏览

node.js - 使用护照js登录谷歌

https://github.com/harshitKyal/loginWithGoogle

这是我的 github 回购链接。我正在使用护照 js 登录 google 。我在谷歌开发者控制台创建了客户端密钥和密钥。在运行代码时,它会将我重定向到成功页面,但 req.user 对象未定义。请指导我完成这个。我从https://github.com/mstade/passport-google-oauth2/tree/master/example获取代码

此代码将我重定向到索引页。但是在我写的索引页中

它应该显示 Hello 和用户名。

但不是那样,而是显示欢迎!请登录。

0 投票
0 回答
213 浏览

node.js - Google 护照身份验证错误:代码已兑换

我遇到了有关谷歌护照登录的问题。

谷歌认证成功后,屏幕继续加载,无法再次重定向到网站。我能够在日志中跟踪谷歌身份验证回调,但不知何故我无法在服务器应用程序中捕获它。我的身份验证和回调代码是正确的,因为它在我尝试托管我的节点应用程序的本地主机和其他云平台(openshift)中运行良好。

这是我得到的错误/auth/google/callback

有人请帮助解决这个问题我已经尝试了许多链接中建议的几乎所有内容,例如

  1. https://github.com/jaredhanson/passport-google-oauth/issues/82
  2. Google Oauth 提供代码兑换错误

但到目前为止还没有成功。

0 投票
1 回答
124 浏览

loopbackjs - 环回护照谷歌高清参数

我正在使用loopback-component-passport通过 google OAuth2Strategy 对用户进行身份验证。除了将“ hd ”或“hostedDomain”参数传递给谷歌外,一切都很好。

我的 provider.json 看起来像这样:

...但是没有“hd”参数传递给谷歌:(。

我已经尝试过使用“myClientSecret&hd=domain.tld”的“hack”,但是所有的值在传递它们之前都是 url 编码的,因此字符“&”和“=”被编码并导致错误......

我的 package.json 中的依赖项:

有人有这方面的经验吗?任何人都可以帮忙吗?

0 投票
4 回答
822 浏览

node.js - [Passportjs][Angular5] 请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,Origin 'null' 不允许访问

我正在尝试将 Nodejs 后端 api 与 Angular 集成。我已经在后端应用程序上实现了 passpor-google、passport-github、passport-twitter 策略。

我的后端应用程序网址是http://localhost:3000 我的前端应用程序网址是http://localhost:4200

护照路线

当我从前端应用程序发送请求时,它给了我 CORS 错误

身份验证服务.ts

我已经在我的 Nodejs 项目中添加了 CORS。我该如何解决这个问题请帮助我

0 投票
1 回答
894 浏览

node.js - 状态参数无法使用 passport-google-oauth2 包节点 js

简介 我正在使用 google 的开放式身份验证,以便用户使用 google 身份验证登录。对 node js使用passport-google-oauth2包。

代码运行良好,除了我一直在发送状态变量但获得不同状态值的一件事。首先我认为这可能是一些配置问题。从最后一天阅读状态参数开始,我想我可能做错了配置。

网络框架:Koa Js

代码验证

在重定向中,我得到了查询字符串中的所有参数,还有具有不同值的状态变量。

示例查询字符串

如果有人对此问题有任何想法,请提供帮助。谢谢你的时间。

0 投票
0 回答
307 浏览

reactjs - 将 React/Express 应用程序部署到 Heroku 后,无法启动 passport.js 流程(而是重新加载页面)

如果这个问题已经得到解答,我提前道歉,我花了大约 30 分钟搜索,但找不到遇到类似问题的人。

情况:我已经结合 Passport.js 创建了一个 React/Express 应用程序来对用户进行身份验证。

问题:虽然该应用程序在本地服务器上运行良好,但一旦将其部署到 Heroku,护照“谷歌”身份验证流程将不会启动。我在下面包含了一个链接,请尝试单击“登录”以复制该问题。页面不会被踢入身份验证流程,而是会重新加载,尽管 URL 为:'/auth/google'

Heroku 链接:https ://stormy-hamlet-86069.herokuapp.com

感谢您抽出宝贵的时间 :)

以下是相关的服务器端代码:

// index.js

// 护照.js

以下是相关的客户端代码:

// 登录

0 投票
0 回答
491 浏览

node.js - 使用谷歌身份验证护照单点登录

短的:

嗨,我想用 nodejs express passport google oauth 进行单点登录

也许有人有一个很好的教程或示例代码

长:

基本上:

  1. 用户进入我的网站登录页面 www.mysite.com/login

  2. 点击“使用 Google 登录”

  3. Passport 完成工作并且用户已登录

现在到这里一切正常,我有用户登录并且他们正在会话中;我可以访问req.user但:

  1. 用户转到另一个站点 www.mysite2.com/home

他需要已经登录。但它不起作用。

此外,如果我再次单击登录页面 www.mysite.com/login 中的“使用 Google 登录”,Google 登录页面会再次显示并要求用户提供电子邮件密码。

我希望 Google 知道他们已经对用户进行了身份验证并向我发送了一个代码 (/auth/google/callback?code=4/SwCR3zt89...) 到我的回调路由 (www.mysite.com/auth/google/callback ) 例如。

以下是部分代码:

服务器.js

登录.html

0 投票
2 回答
1453 浏览

node.js - 无法使用节点和护照通过谷歌获取用户个人资料登录

我正在尝试使用节点和包 passport-google-oauth20 通过谷歌登录。但收到错误 - “InternalOAuthError:无法获取用户配置文件”。已经启用 google plus api。我正在使用我的企业 gmail id 来访问它。一切都存储在 mongodb 中,但没有得到返回 json 作为响应。这是我的 passport-setup.js 代码。

这是路线代码

我在 google.redirect 请求上遇到错误。

请求用户

向我展示 InternalOAuthError

0 投票
0 回答
627 浏览

node.js - 我们可以使用护照本地策略和护照谷歌策略来实现登录功能吗

我已经实施了护照本地策略和护照谷歌策略来实现登录功能,我的谷歌策略运行良好,但是当我使用本地策略登录时,它调用护照谷歌策略的可序列化和可反序列化方法。

我已经为这两个策略创建了单独的实例(即本地和谷歌策略),仍然只调用谷歌策略的 serializableUser 和 deserializableUer 方法,因为结果 req.user 在本地策略的情况下仍然未定义,因为用户未在会话中设置

我已经访问了很多stackoverflow问题,但我没有得到任何解决方案,最后我想知道是否可以使用护照本地策略和护照谷歌策略在同一个项目中实现登录功能?

我的问题与此类似(未分别调用序列化和反序列化方法

应用程序.js

这里 googleS 和 localS 是两种不同策略的实例,即 local 和 google 策略。

谷歌策略文件

本地策略文件

这里的问题是,当我通过本地策略登录时,它仍然调用谷歌策略的序列化和反序列化方法,因此无法将本地策略的用户设置为会话,因此它在 req.user 上返回未定义。为什么会发生,我在哪里错了吗?请建议,我需要立即帮助,从过去三天开始我就一直遇到这个问题。非常感谢任何帮助,我将非常感谢这个人。

0 投票
0 回答
119 浏览

heroku - 为什么 Passport Google 不在 heroku 中

我制定了适用于开发的 Passport Google Oauth 策略。但是,当我在 heroku 中部署它时,它只是重定向到 URL,而不是转到 Google 的同意屏幕。我在前端使用 react 并已将所有凭据和回调 URL 正确放置在谷歌开发者控制台中。

这是谷歌策略的代码

这是授权路线

我正在使用这个链接标签来调用端点

GOOGLE_LOGIN 变量如下

当我在开发中时,URL 会正确重定向到同意屏幕。但是,在部署到 heroku 之后,它只是重定向到https://<URL>/auth/google而不是进入同意屏幕。我试图console.log在端点但没有登录。有人知道如何解决这个问题吗?