hapijs - JOI 电子邮件验证
问题描述
我使用 Joi 库作为我的 CRA 项目的独立验证器,但是在触发email()
验证器时,我得到了神秘的错误
Uncaught Error: Built-in TLD list disabled
解决方案
来自 Joi文档:
默认情况下,TLD 必须是 IANA 注册表中列出的有效名称。要禁用验证,请将 tlds 设置为 false。要自定义 TLD 的验证方式,请设置以下选项之一:
允许 - 之一:
- 如果使用 IANA 注册 TLD 列表,则为 true。这是默认值。
- false以允许拒绝列表中未列出的任何 TLD(如果存在)。
- 允许的 TLD 的集合或数组。不能
与拒绝一起使用。
要针对 IANA 接受列表禁用 TLD 验证:
email: Joi.string().email({ tlds: { allow: false } });
这应该会禁用验证并允许您接受任何 TLD,即使它没有经过 IANA 注册。
推荐阅读
- c# - 有没有办法结合foreach循环
- haskell - 如何使用 Haddock 记录类型类约束?
- django - 在管理员中上传图像时,出现错误:不允许文件扩展名 'jpg'。允许的扩展名是:''
- python - 从 pycharm 运行 dev_appserver.py 时出现 ImportError
- apache-spark - apache spark执行器和数据本地化
- php - 从php中的字符串中删除字母数字单词
- javascript - 使用猫鼬的对象引用
- php - Slim Framework如何在拦截器中按名称捕获路由参数
- c# - 在 Web API (.Net Framework) 中创建自定义 AuthorizeAttribute
- reactjs - 使用 redux,当状态树中的状态有效更改时,为什么 mapStateToProps() 没有在 props 中显示状态?