我正在使用Joi验证器处理我的HTTP请求.这里有一个叫做type的参数.我需要确保参数的可能值是"ios"或"android".

我该怎么做?

body : {
  device_key : joi.string().required(),
  type : joi.string().required()
}

推荐答案

你可以用valid.

const schema = Joi.object().keys({
  type: Joi.string().valid('ios', 'android'),
});

const myObj = { type: 'none' };
const result = Joi.validate(myObj, schema);
console.log(result);

这给出了一个错误ValidationError: child "type" fails because ["type" must be one of [ios, android]]

Node.js相关问答推荐

需要关于基于角色授权的设计建议

@nuxtjs/站点 map 错误提示:找不到包';NitroPack';

如何在MongoDB中更新嵌套数组

使用ReadableStream.管道时NodeJS Crypto Hash不正确

如何获取mongoose中单个id数据的记录

使用 NPM 8 安装本地构建

密码加密的最佳实践是什么?

Google App Engine 突然不允许我部署我的 node.js 应用程序

为什么我的 npm 脚本中的 glob 不起作用?

如何在 TypeScript 中输出 Hackerrank 二叉树问题?

baseurl64 缓冲区解码

Dart 语言比 JavaScript (Node.js) 有什么好处

如何在不全局安装的情况下在 Node REPL 中要求 node 模块?

已安装全局 NPM 包但未找到命令

使用 pm2 编程 api 重命名进程

需要 node-gyp 的 npm install 在 Windows 上失败

在 Node 中连接和缩小 JS 文件

当我try 向我的 S3 存储桶 (Node.js) 发送内容时,AWS 缺少凭证

在 Node.js 中混合使用 JavaScript 和 TypeScript

我无法全局安装 nodemon,nodemon无法识别