gpt4 book ai didi

node.js - Hapi-Swagger 因 header 值而失败

转载 作者:太空宇宙 更新时间:2023-11-03 23:21:26 24 4
gpt4 key购买 nike

我在我们的应用程序中使用 hapi-swagger,其中一个 API 尝试使用自定义 header ,但当我使用自定义 header 调用该 API 时出现以下错误

{
"statusCode": 400,
"error": "Bad Request",
"message": "Invalid request headers input"
}

在 API 下方,我将 header 与验证器一起使用。

{
method: 'POST',
path: '/v1/testapi',
config: {
description: 'Greet user',
notes: ['Use to greet a user'],
tags: ['api'],
handler: function ( request, h ) {
console.log('sending response...');
return h.response('OK');
},
validate: {
headers: {
name: Joi.string().required()
}
}
}
}

以下是我们正在使用的版本。

“hapi”:“17.2.2”,

“hapi-swagger”:“9.1.1”,

“joi”:“13.1.2”,

最佳答案

我最近遇到了这个问题。您需要使用 allowUnknown 验证选项来允许未知 header ( https://github.com/hapijs/hapi/issues/2407#issuecomment-74218465 )。

validate: {
headers: Joi.object({
name: Joi.string().required()
}).options({ allowUnknown: true })
}

另请注意,hapi 17 更改了报告验证错误的默认行为。如果您想记录或返回实际错误,指示哪些 header 未通过验证,而不是通用的“错误请求”,您可以添加自定义 failAction 处理程序 ( https://github.com/hapijs/hapi/issues/3706 )。

关于node.js - Hapi-Swagger 因 header 值而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49270642/

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