首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AJV没有验证我的架构

AJV没有验证我的架构
EN

Stack Overflow用户
提问于 2018-08-08 15:39:43
回答 1查看 771关注 0票数 0

我面临着关于AJV模式验证器的问题。我有以下模式

代码语言:javascript
复制
{
    "$id": "create-offer.json#",
    "body": {
        "type": "object",
        "properties": {
            "statusCode": {
                "type": "number"
            },
            "id": {
                "type": "string"
            },
            "name": {
                "type": "string"
            },
            "description": {
                "type": "string"
            },
            "status": {
                "type": "string"
            },
            "type": {
                "type": "string"
            },
            "routePlanId": {
                "type": "string"
            },
            "currencyId": {
                "type": "string"
            },
            "autoRateUpdateActive": {
                "type": "boolean"
            }
        }
    }
}

我的回答是:

代码语言:javascript
复制
{ statusCode: 2006,
  statusPhrase: 'Error: ORA-00001: unique constraint (SPHERE_D1.CHECK_UNIQUE_RATE_NAME) violated\nORA-06512: at "SPHERE_D1.PKG_RATE_TABLES_V2", line 102\nORA-06512: at "SPHERE_D1.PKG_RATE_TABLES_V2", line 54\nORA-06512: at line 1' }

使用以下代码进行验证:

代码语言:javascript
复制
let valid = ajv.validate(schema, res);
var detailedErrorMsg = "\n" + ajv.errorsText(ajv.errors, { separator: "\n" }) + "\n";
console.log(detailedErrorMsg);

AJV应该返回错误,因为架构和响应不同,但AJV返回“无错误”。代码有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-08 16:01:24

这可以通过在模式定义中添加必需的字段来解决。

代码语言:javascript
复制
{
    "$id": "create-offer.json#",
    "description": "",
    "title": "",
    "type": "object",
    "required": [
        /*mention objects which should be requird*/
    ]
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51741084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档