问题标签 [passport-google-oauth]

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 投票
1 回答
68 浏览

javascript - 如何访问 google Oauth2 护照中的个人资料信息?

所以我希望索引页在索引页的页脚中显示当前登录的用户名。
我的谷歌登录路线

我的谷歌策略

我的索引文件的页脚

我的页脚
页脚 IMG

0 投票
1 回答
539 浏览

node.js - 如何从 google Passport 检索、保存和更新 idToken

我在我的 nodejs 应用程序中使用 google oauth 护照策略,但我不知道存储和更新我的 idToken 的正确方法,因此我可以在对外部 api 进行 api 调用时将其用于身份验证。目前,我正在将令牌写入文本文件并从那里读取。我觉得这是一个坏主意,只需要关于如何以更优雅的方式做到这一点的建议。

0 投票
1 回答
151 浏览

node.js - PassportJs Google Auth 将现有用户保存为数据库中的新用户。我该如何解决?

我正在使用 passportJs Google Authetication。尽管数据库中存在一个用户,但当我使用该用户登录系统时,它会在数据库中再次创建该用户作为新用户。我该如何解决这个问题,你能帮忙吗?那是数据库的图像:

在此处输入图像描述

这是我的代码:

我的路由器:

我的 UserSession 中间件:

0 投票
2 回答
796 浏览

passport.js - Next.js 使用 /api 路由和护照实现谷歌登录

我正在尝试在我的无服务器(/api路由)next.js 应用程序中实现 Google 登录。
我正在使用@passport-next/passport-google-oauth2,next-connectpassport包。
我进行了很多搜索,并在网上找到了一些有用的链接,但我无法让它工作,而且我不确定这里应该发生的整个流程。
例如,我发现了那些:

我有/api/auth/login定期登录的路线。如果登录成功,我将JWT在用户响应中设置 cookie。

对于谷歌登录,我添加了/api/auth/social/google路由,代码如下:

/api/auth/social/callback/google路线,使用以下代码:

所以发生的情况是用户/auth/success在登录到他的谷歌帐户后被重定向到,并且控制台日志是:

所以我的问题是:

  1. 何时以及如何JWT在响应“登录”用户时设置 cookie?
  2. 为什么这条线console.log('auth callback')永远不会运行?它应该什么时候运行?
  3. 同样对于console.log('passport authenticated', args)
  4. 我的应用程序中的完整流程应该是什么样子?

谢谢 !

0 投票
1 回答
104 浏览

node.js - ExpressJS + PassportJS + passport-google-oauth `req.isAuthenticated()` 登录后立即返回 false

我的PassportJS设置做了一些奇怪的事情,我可以req.user在登录deserialize功能后看到,但毕竟req.isAuthenticated() false没有req.user找到。我已经在 StackOverflow 上提到了很多关于这个问题的问题,几乎每个问题都在 StackOverflow 上。没有什么对我有用,不知道这里是什么情况。我正在提交我的代码,有人可以告诉我这里出了什么问题以及为什么会这样。至少可以修复!:(

我使用passport-google-oauth作为我的策略。此外,客户端是一个 Angular 应用程序。

我还尝试通过直接访问来使用passport-google-oauth20

我发现的是,在social_logins.google_callback可以req.user找到并且还req.isAuthenticated()返回true。重定向发生后,它将不起作用。

提前致谢!

0 投票
1 回答
574 浏览

passport.js - 未知的身份验证策略“google”

当我尝试在我的 node.js 和 express 应用程序中使用 passport.JS 登录 Google 时,我在浏览器中收到消息Unknown authentication strategy "google" 。我似乎无法弄清楚我做错了什么。这是我的代码。我也阅读了其他帖子,但还没有找到有效的修复方法。

配置\passport.js

路由\auth.js

应用程序.js

0 投票
1 回答
203 浏览

passport.js - 使用护照谷歌的谷歌身份验证不起作用

这是我输入的代码。

ReferenceError:用户未在 C:\Users\hp\short.nner\node_modules\passport-oauth2\lib\ 的 Strategy._verify (C:\Users\hp\short.nner\server.js:64:7) 中定义strategy.js:202:24 在 C:\Users\hp\short.nner\node_modules\passport-google-oauth20\lib\strategy.js:122:5 在 passBackControl (C:\Users\hp\short.nner\ node_modules\oauth\lib\oauth2.js:134:9) 在 IncomingMessage。(C:\Users\hp\short.nner\node_modules\oauth\lib\oauth2.js:157:7) 在 IncomingMessage.emit (node:events:341:22) 在 endReadableNT (node:internal/streams/可读: 1294:12) 在 processTicksAndRejections (node:internal/process/task_queues:80:21)

我从护照文档中复制了上述代码。有谁知道我为什么会收到这个错误? 这里的用户实际上是什么?

我认为这段代码有问题

0 投票
1 回答
289 浏览

node.js - req.user.displayname 未定义 Nodejs + passport = google oauth

我试图在登录后访问 req.user.displayName 但我没有定义。有什么我想念的吗?

配置/passport.js ;

我试图在登录后访问 req.user.displayName(重定向到“/”并传递 req.user.displayName 以在 ejs 视图中呈现)

控制器/index.controllers.js

路线/index.routes.js

路线/users.routes.js

你也可以在这里找到整个代码:https ://github.com/fcarreon/google-test

0 投票
0 回答
96 浏览

node.js - ValidatorError:需要路径“lastName”

我是 Node.js 的新手,而且是 MongoDB 的新手。

我正在尝试使用 Google OAuth 2.0 和护照制作身份验证系统。

我不断收到此错误: Error: User validation failed: lastName: Path `lastName` is required.

你能帮助我吗?我从 GitHub 获得了这段代码,我正在尝试修改它,但是这个错误不允许我继续我的项目。

这是有问题的代码:

0 投票
2 回答
392 浏览

node.js - 获取缺少必需参数:范围 Passport.js,快递

我在我的应用程序中使用 Passport.js 和 express 来登录 Google Oauth。但是当我尝试登录时,我收到以下错误:invalid parameter value for redirect_uri: Missing authority: http:localhost:3000/google/callback当我访问时localhost:3000/google/callback,我得到了Missing required parameter: scope。相关代码:

护照配置(相关代码):

PS:我找到了这个答案,但我不知道他所说的“JSON 密钥”是什么意思。也许 API 更新了。

任何帮助将非常感激。提前致谢。


编辑

我提供给 google 的回调 url 与我的 `app.get` 不匹配。固定的。