【发布时间】:2019-03-25 07:46:27
【问题描述】:
嘿,我处于静止状态。我不确定发生了什么,但我无法获得我的访问令牌。我正在尝试使用 Passport 策略进行抽搐身份验证。我遇到的错误是 InternalOAuthError:无法在 Strategy.OAuth2Strategy._createOAuthError 获取访问令牌。我做错了什么?
护照策略
passport.use(
new TwitchStrategy({
clientID: keys.twitchClientID,
clientSecrect: keys.twitchClientSecrect,
// callbackURL:'/auth/twitch/callback',
callbackURL:'http://127.0.0.1:5000/auth/twitch/callback',
scope: "user:read:email analytics:read:games",
proxy: true
}, (accessToken, refreshToken, profile, done) => {
console.log(accessToken);
console.log(profile);
})
)
认证路由器
router.get("/twitch", passport.authenticate("twitch.js"));
router.get(
"/twitch/callback",
passport.authenticate("twitch.js", { failureRedirect: "/" }),
(req, res) => {
// Successful authentication, redirect home.
res.redirect("/");
}
);
NPM 包
https://www.npmjs.com/package/passport-twitch.js
从身份验证重定向 URL
http://localhost:5000/auth/twitch/callback?code=xqp1au3zqigezj8dzeslcvih8mqn6x&scope=user%3Aread%3Aemail+analytics%3Aread%3Agames
【问题讨论】:
-
抱歉,这是您的 twitch 帐户的访问令牌吗?还是您正在通过此令牌为您的用户创建访问令牌?
-
您来自 twitch 的访问令牌在回调的响应标头中可用...所以为了得到它,您可以在那里寻找它。在邮递员中测试它
-
这是一个用户令牌,所以我链接的这个重定向网址来自 twitch 我相信一旦我通过 twitch 登录。
-
好的,它似乎对我有用(减去重定向网址)但这是你的问题,更改此行 passport.authenticate("twitch"));和这一行 passport.authenticate("twitch"));
-
实际上没有用。问题是您正在尝试使用应用凭据进行身份验证并获取用户令牌...
标签: javascript node.js oauth oauth-2.0 twitch