【问题标题】:"$__" is not allowed [closed]不允许使用“$__”[关闭]
【发布时间】:2018-12-07 18:20:38
【问题描述】:

我使用 Joi 进行验证。 我用 Postman 发送一个 POST 请求并得到这个响应 "$__" is not allowed。

找不到任何相关的参考资料。

【问题讨论】:

  • 您是如何安装和需要 Joi 的?
  • 客户是猫鼬模型,不是吗?您应该验证它是对象表示,而不是内部文档表示。可能validate(customer.toObject())。请告诉我这是否有效。此外,使用外部验证器验证 Mongoose 模型也没有多大意义。 Mongoose 提供了额外的开销来处理这些事情。
  • @estus 不再需要使用 Joi 了吗?
  • @FransiscoWijaya 可能是的。 Mongoose 进行验证。这是 ORM 的主要目的之一。是猫鼬吗?该问题没有适当的标签,但在此处非常相关。
  • 对不起,我是菜鸟,我明天会提供更新,看看它是否有效

标签: json node.js rest express mongoose


【解决方案1】:

不要使用 Joi,猫鼬有自己的验证器。 在模型声明上编写您自己的验证。

【讨论】:

  • 是的 - Mongoose 有自己的验证器。但是 Joi 的目的是验证传入的请求正文。以及 mongoose 验证的目的是在将数据存储到 mongo 之前对其进行验证。所以它们应该被用作以及如何服务于目的。
猜你喜欢
  • 2014-06-21
  • 1970-01-01
  • 1970-01-01
  • 2012-06-11
  • 2011-12-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多