如何解决使用 hapi-openapi 我想要一个可选字符串
在使用 krakenjs/hapi-openapi 时,我似乎无法将字符串设为可选。
这里是 swagger/openApi
paths:
/string:
post:
parameters:
- name: stringBody
in: body
schema:
$ref: "#/deFinitions/StringBody"
required: true
responses:
200:
description: All good
deFinitions:
StringBody:
type: object
properties:
stringBody:
type: string
maxLength: 13
当我卷曲
curl localhost:8083/v2/string -H "Content-Type: application/json" -d '{"stringBody":""}'
我明白
{"statusCode":400,"error":"Bad Request","message":"Invalid request payload input"}
如果我通过 curl 传递一个字符,它就会很好地击中处理程序
我知道如果我在代码中定义路由,我可以添加 .allow('') 并且 Joi 会通过验证 ie
server.route({
method: 'POST',path: '/hello',handler: function (request,reply) {
return 'hello ' + ((request.payload || {}).name || 'world');
},options: {
validate: {
payload: Joi.object({
name: Joi.string().allow('')
})
},}
});
我使用以下版本
"@hapi/hapi": "^20.0.3","hapi-openapi": "^2.0.2"
干杯
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。