小编Zia*_*nur的帖子

sinon 库的 fake、spy、stub 和 mock 之间的区别( sinon fake vs spy vs stub vs mock )

我试图理解 sinon 库的 fake、spy、stub 和 mock 之间的区别,但无法清楚地理解它。

有人可以帮我了解一下吗?

javascript mocha.js node.js sinon jestjs

18
推荐指数
2
解决办法
3003
查看次数

如何在护照LocalStrategy回调中获取http request.body或request

只是想在 LocalStrategy 的回调中获取 http 请求或 request.body,正如您在附件中看到的那样,我们像这样编码 new LocalStrategy({ usernameField: 'email', passwordField: 'pwd' },(username: any, password :any,done:any) => { 我们能够获取用户名和密码,但我想获取整个 req.body

  1. 我想获取在登录请求中传递的一些附加信息,并希望将此附加信息存储为创建的会话的一部分。
  2. 我尝试使用护照的 req.logIn() 方法来解决此问题,方法是在 Passport.authenticate('local',callback) 的回调中。
  3. 它有效,但这里的问题是 Passport.serialize 方法被调用两次,因此它创建了两个会话。我想避免创建双重会话。
  4. 因此我认为的解决方案是通过 LocalStrategy 方法获取附加信息。

代码

import UserDetailsRepo from '../../repo/UserDetailsRepo'
import UserDetails from '../../model/UserDetails'
import * as passport from 'passport'
import { Strategy as LocalStrategy } from 'passport-local'
// import JwtConfiguration from './express-jwt-config'
import * as HttpStatus from 'http-status-codes'

class PassportAuth {
    public passport: any;
    constructor() {
        this.passport = passport.use(new LocalStrategy({
            usernameField: 'email', …
Run Code Online (Sandbox Code Playgroud)

authentication node.js passport-local

3
推荐指数
1
解决办法
4419
查看次数