Hapi Joi validation - 验证单个字符串
Hapi Joi validation - validate single string
我想对作为请求 header X-Value
的单个字符串进行一些基本验证。下面是我的尝试。
问题是它总是 returns 'success' 即使没有 X-Value
header 存在。
const mySchema = Joi.string().min(2).max(30).required();
const value = req.get('X-Value');
const { myError } = mySchema.validate(value);
if(myError){
return res.status(401).json({ error: myError.details[0].message });
}
return res.send('success');
如何在不将其放入 object 的情况下验证它?
您正在从验证函数解构 myError
。但是没有这样的事情。您需要销毁 error
并像这样使用:
const mySchema = Joi.string().min(2).max(30).required();
const value = req.get('X-Value');
const { error } = mySchema.validate(value);
if (error) {
return res.status(401).json({ error: error.details[0].message });
}
return res.send("success");
我想对作为请求 header X-Value
的单个字符串进行一些基本验证。下面是我的尝试。
问题是它总是 returns 'success' 即使没有 X-Value
header 存在。
const mySchema = Joi.string().min(2).max(30).required();
const value = req.get('X-Value');
const { myError } = mySchema.validate(value);
if(myError){
return res.status(401).json({ error: myError.details[0].message });
}
return res.send('success');
如何在不将其放入 object 的情况下验证它?
您正在从验证函数解构 myError
。但是没有这样的事情。您需要销毁 error
并像这样使用:
const mySchema = Joi.string().min(2).max(30).required();
const value = req.get('X-Value');
const { error } = mySchema.validate(value);
if (error) {
return res.status(401).json({ error: error.details[0].message });
}
return res.send("success");