未提供 'invokeMiddleware' 的参数

An argument for 'invokeMiddleware' was not provided

我在实施 loopback4 身份验证时遇到此错误。

    constructor (
    // ---- ADD THIS LINE ------
    @inject(AuthenticationBindings.AUTH_ACTION)
    protected authenticateRequest: AuthenticateFn,
    ) {
       super(authenticateRequest);
    }

此答案来自社区 Slack 频道

根据 the documentation (permalink), modifying src/sequence.ts is only meant for the now-deprecated Action-based Sequences, and not required for Middleware-based Sequences 默认情况下在 newly-generated LoopBack 4 项目中使用。

如何识别“序列类型”

class 签名将提示正在使用的序列类型:

// Action-based sequence
class MySequence extends DefaultSequence {/* ... */}

// Middleware-based Sequence
class MySequence extends MiddlewareSequence {/* ... */}