【问题标题】:Passport js Error 401: invalid_client The OAuth client was not foundPassport js 错误 401:invalid_client 未找到 OAuth 客户端
【发布时间】:2021-02-22 16:50:33
【问题描述】:

我在 Express 中使用 Passport js 对 Google 用户进行身份验证。我将Passport 用于oauth 服务,passport-google-oauth20 用于GoogleStrategy,我将Express 用于服务器端。所以下面是我的代码....

const express = require('express')
const passport = require('passport')
const GoogleStrategy = require('passport-google-oauth20').Strategy
const key = require('./config/key')
const app = express()

  passport.use(new GoogleStrategy({
    clientID: key.googleClientSecret,
    clientSecret: key.googleClientSecret,
    callbackURL: '/auth/google/callback'
  },(accessToken)=>{
     console.log(accessToken)
  })
)

app.get('/auth/google',passport.authenticate('google', {
   scope: ['profile','email']
}))

app.get('/auth/google/callback',passport.authenticate('google'))

const PORT = process.env.PORT || 5000
app.listen(PORT)

以下是我的 package.json 脚本

"scripts": {
"start": "node index.js",
"dev": "nodemon index.js"
}

我正在使用nodemon 来自动运行服务器。我还在google.developers.console 中为client_id 和client_secret 创建了项目。但是当我运行服务器时,它只是将我重定向到以下 url 并显示以下错误。

网址:https://accounts.google.com/signin/oauth/error?authError=Cg5pbnZhbGlkX2NsaWVudBIfVGhlIE9BdXRoIGNsaWVudCB3YXMgbm90IGZvdW5kLiCRAw%3D%3D&client_id=z02cLybsfbgFxwA3d60Iuc5u

错误:

【问题讨论】:

  • 这是一个错字您将 ClientSecret 设置为 clientID

标签: node.js express oauth


【解决方案1】:
    clientID: key.googleClientSecret,
    clientSecret: key.googleClientSecret,

您将googleClientSecret 设置为客户端ID。这似乎不对:)

【讨论】:

  • 非常感谢。就是那个拼写错误。现在一切正常,我只需替换 clientID: key.googleClientID, clientSecret: key.googleClientSecret,
猜你喜欢
  • 2018-03-24
  • 2016-02-25
  • 2015-11-19
  • 2015-02-20
  • 2016-03-02
  • 1970-01-01
  • 2016-03-15
  • 1970-01-01
相关资源
最近更新 更多