我正在我的应用程序中构建一个新端点,用作express-openapi-validator验证器中间件。
/* index.ts */
import * as OpenApiValidator from 'express-openapi-validator';
const whitelistedPaths = [/* regex tested paths */];
app.use(
    OpenApiValidator.middleware({
      apiSpec: './schema/api.json',
      validateResponses: true,
      ignorePaths: whitelistedPaths,
      validateSecurity: true,
    }),
  );
/* ... */
app.post(
  '/users/:email/validateToken',
  bodyParser.json(),
  (req) => validateToken(req.params.email, req.body.resetToken),
);
在我的配置 ( api.json) 文件中,我将端点的架构定义为:
    "/users/{email}/validateToken": {
      "post": {
        "tags": ["users"],
        "summary": "Validate user token",
        "operationId": "validateToken",
        "responses": {
          "200": {
            "description": "Ok",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        },
        "parameters": [
          {
            "name": …