如何在带有JSON模式的json中使用重音来验证属性?

时间:2018-11-09 13:43:25

标签: json jsonschema

我需要验证api的json响应。有一个财产,使一切混乱。为简单起见,我需要验证的json是:

{
  "razón_social" : "Empresa"
}

另一方面,我用于验证的JSON Shema是:

{
  "type": "object",
  "properties":{
    "razón_social": {
      "type": "string",
      "required": true
    }
  }
}

但是它与JSON模式不匹配。关于如何在JSON中使用重音来验证属性的任何想法吗?

1 个答案:

答案 0 :(得分:1)

实际上,问题出在我使用架构读取文件时。我需要更改的是一行,其中读取了带有模式的文件内容。

发件人:

interface Circle {
    radius: number;
}

interface Square {
    width: number;
}

type Types = Circle | Square

class Foo{
  data: Bar<Types>
}

class Bar<T>{
  attributes: T
}

let x: Bar<Circle> = {
    attributes: {
        radius: 4
    }
};

let y: Bar<Square> = {
    attributes: {
        width: 4
    }
};

let z: Bar<Types> = {
    attributes: {
        radius: 4
    }
};

// Error, as it may not be compatible
x = z;

function isCircle(item: Bar<Types>): item is Bar<Circle> {
    return (item.attributes.hasOwnProperty('radius'));
}

if (isCircle(z)) {
    // Works
    x = z;
}

收件人:

File.ReadAllText(filePath);