gpt4 book ai didi

feathersjs - Joi 验证 feathersjs

转载 作者:行者123 更新时间:2023-12-03 16:43:15 25 4
gpt4 key购买 nike

我有一个带有 messages service 的 feathersjs API .我想用 feathers-hooks-validate-joi 验证消息模型模块。

这是我的messages-hooks.js文件:

const validate = require('feathers-hooks-validate-joi');
const schema = require('./messages.validator');

module.exports = {
before: {
create: [validate.form(schema)],
//others method fields
},
after: {...},
error: {...}
};

这是我的 messages.validator.js文件:
const Joi = require('joi');

const schema = Joi.object().keys({
name: Joi.string().trim().min(2).required(),
text: Joi.string().trim().min(2).required()
});

module.exports = {schema};

当我尝试通过 curl 发布消息时:
curl 'http://localhost:3030/messages/' -H 'Content-Type: application/json' --data-binary '{ "name": "Hello", "text": "World" }'
我收到此错误消息:
{
"name": "BadRequest",
"message": "Invalid data",
"code": 400,
"className": "bad-request",
"data": {},
"errors": {
"name": "\"name\" is not allowed",
"text": "\"text\" is not allowed"
}
}

我错过了什么吗?我是否正确使用了羽毛钩?

最佳答案

module.exports = {schema};

这应该是:
module.exports = schema;

不应该吗?

或者,您的 require 语句应更改为:
const {schema } = require('./messages.validator');

关于feathersjs - Joi 验证 feathersjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45878534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com