如何使用 async/await 模式获得 passport.authenticate 本地策略
how to get passport.authenticate local strategy working with async/await pattern
我一直无法让 passport.authenticate 在 async/await 或 promise 模式中工作。这是一个我认为应该有效的示例,但它无法执行 passport.authenticate().
const passport = require("passport");
let user;
try {
user = await __promisifiedPassportAuthentication();
console.log("You'll never have this ", user);
} catch (err) {
throw err;
}
function __promisifiedPassportAuthentication() {
return new Promise((resolve, reject) => {
console.log("I run");
passport.authenticate('local', (err, user, info) => {
console.log("I never run");
if (err) reject(err);
if (user) resolve(user);
}
}
}
不胜感激。
以防其他疲惫的程序员遇到这个..
function __promisifiedPassportAuthentication() {
return new Promise((resolve, reject) => {
passport.authenticate('local', (err, user, info) => {
...
})(req, res) // <-- that guy right there
}
}
我一直无法让 passport.authenticate 在 async/await 或 promise 模式中工作。这是一个我认为应该有效的示例,但它无法执行 passport.authenticate().
const passport = require("passport");
let user;
try {
user = await __promisifiedPassportAuthentication();
console.log("You'll never have this ", user);
} catch (err) {
throw err;
}
function __promisifiedPassportAuthentication() {
return new Promise((resolve, reject) => {
console.log("I run");
passport.authenticate('local', (err, user, info) => {
console.log("I never run");
if (err) reject(err);
if (user) resolve(user);
}
}
}
不胜感激。
以防其他疲惫的程序员遇到这个..
function __promisifiedPassportAuthentication() {
return new Promise((resolve, reject) => {
passport.authenticate('local', (err, user, info) => {
...
})(req, res) // <-- that guy right there
}
}