javascript - Strongloop Passport.js 身份验证 - "Failed to obtain access token"

标签 javascript node.js oauth passport.js loopbackjs

我正在尝试编写一个通过 Github Enterprise 服务器进行身份验证的 Express/Passport 应用程序。这需要手动编辑 Passport 的 github-strategy 以指向私有(private)企业 API 端点。没什么大不了的。

我正在使用 Strongloop 构建应用程序,因此我正在使用 strongloop-passport-component 集成。

据我所知,应用程序配置正确,但在重定向时,我收到以下错误消息:

Loopback 500 InternalOAuthError: Failed to obtain access token at Strategy.OAuth2Strategy._createOAuthError (/Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/lib/strategy.js:370:17) at /Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/lib/strategy.js:166:45 at /Users/Tom/Desktop/soundoff/node_modules/passport-github/lib/strategy.js:75:25 at /Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:177:18 at ClientRequest. (/Users/Tom/Desktop/soundoff/node_modules/passport-github/node_modules/passport-oauth2/node_modules/oauth/lib/oauth2.js:148:5) at emitOne (events.js:90:13) at ClientRequest.emit (events.js:182:7) at TLSSocket.socketErrorListener (_http_client.js:262:9) at emitOne (events.js:90:13) at TLSSocket.emit (events.js:182:7)

如果我查看 github 应用程序设置,我可以验证用户是否已成功通过该应用程序进行身份验证。它似乎无法将用户重定向到重定向 URI。显然它找不到访问 token ?

用户最终访问的 URL 类似于 http://0.0.0.0:3000/auth/github/callback?code=dceef2ffe07b5dbfa194——但是,我希望他们最终访问http://0.0.0.0:3000/auth/account

可能导致 Loopback 找不到访问 token 的原因是什么?不是在 url ?code=?

中吗

最佳答案

不幸的是,解决方案是不使用 strongloop-passport-component。开发人员一直没有响应,而且看起来这不会得到修复。

关于javascript - Strongloop Passport.js 身份验证 - "Failed to obtain access token",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36968523/

相关文章:

javascript node.js在try catch中获取行号?

ios - 将 TouchID 与 KeyCloak 等身份提供商结合使用

angularjs - Passport AngularJS ExpressJS : Origin null is not allowed by Access-Control-Allow-Origin

javascript - 选择 div 的第一张图像作为数组

javascript - Node-webkit:ReferenceError:_未定义

c# - 有没有办法获得唯一的计算机 ID?

json - util.inspect/JSON.stringify 不适用于对象中的数组

oauth - Twitter API - oauth gem - 没有得到回调

javascript - 使用 AJAX 和 PHP 将数据插入 MySQL

javascript - 密码在保存到数据库之前不会进行哈希处理