【问题标题】:hapi - request payload validation with joi - problem with payloadhapi - 使用 joi 请求有效载荷验证 - 有效载荷问题
【发布时间】:2023-01-05 00:29:09
【问题描述】:

我进入 vscode 波纹管交流:

类型“ObjectSchema”不可分配给类型“RouteOptionsResponseSchema |不明确的'。 类型“import("/node_modules/@types/hapi__joi/index").ObjectSchema”中缺少属性“artifact”,但在类型“import("/node/node_modules/joi/lib/index”).ObjectSchema'中是必需的。 TS(2

贝娄我的代码,如何解决它?

const usersPlugin = {
  name: "app/users",
  dependencies: ["prisma"],
  register: async function (server: Hapi.Server) {
    // here you can use server.app.prisma
    server.route([
      {
        method: "POST",
        path: "/users",
        handler: registerHandler,
        options: {
          validate: {
            payload: userInputValidator,
          },
        },
      },
    ]);
  },
};
...
const userInputValidator = Joi.object({
  firstName: Joi.string().required(),
  lastName: Joi.string().required(),
  email: Joi.string().email().required(),
  social: Joi.object({
    facebook: Joi.string().optional(),
    twitter: Joi.string().optional(),
    github: Joi.string().optional(),
    website: Joi.string().optional(),
  }).optional(),
});


【问题讨论】:

  • 我遇到了同样的错误,您找到解决方案了吗?

标签: hapi


【解决方案1】:

我的问题已通过更换解决

import Joi from '@hapi/joi';

和:

import Joi from 'joi';

在你的情况下,它可以用 require('joi'); 替换 require('@hapi/joi');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 2018-09-20
    • 2011-10-01
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多