ajv-cli 是一个基于 JSON Schema 的数据校验工具,它可以通过命令行进行调用和使用。在前端开发中,我们经常需要对接口返回的 JSON 数据进行校验,而 ajv-cli 可以帮助我们快速有效地完成这个任务。
安装
首先,我们需要安装 ajv-cli。在终端中输入以下命令即可完成安装:
--- ------- -- -------
使用
校验 JSON 数据
假设我们有一个 JSON 文件 data.json
,内容如下:
- ------- ----- ----- ------ --- -------- ---------------------- -
要对这个数据进行校验,我们需要创建一个 JSON Schema 文件 schema.json
,内容如下:
- ---------- ------------------------------------------ ------- --------- ------------- - ------- - ------- -------- -- ------ - ------- --------- ---------- -- ---------- --- -- -------- - ------- --------- --------- ------- - -- ----------- -------- ------ -------- -
其中,$schema
字段指定了 JSON Schema 的版本,type
字段指定了根元素的数据类型为对象,properties
字段定义了对象的属性及其校验规则,required
字段指定了必须包含的属性。
接下来,我们可以使用 ajv-cli 进行校验:
--- -- ----------- ---------
如果数据符合校验规则,则输出空;否则,输出错误信息。在本例中,由于 data.json
中的数据符合 schema.json
中定义的规则,所以输出为空。
校验接口返回数据
有时候我们需要对接口返回的 JSON 数据进行校验。假设我们有一个返回以下数据的接口:
- ------- ---- ---------- ----- ------- - ------- ----- ----- ------ --- -------- ---------------------- - -
要对这个数据进行校验,我们需要创建一个 JSON Schema 文件 response-schema.json
,内容如下:
- ---------- ------------------------------------------ ------- --------- ------------- - ------- - ------- --------- ---------- ---- ---------- --- -- ---------- - ------- -------- -- ------- - ------- --------- ------------- - ------- - ------- -------- -- ------ - ------- --------- ---------- -- ---------- --- -- -------- - ------- --------- --------- ------- - -- ----------- -------- ------ -------- - -- ----------- -------- ---------- ------- -
其中,code
字段表示状态码,必须为 2xx 范围内的数值;message
字段表示接口返回的消息,必须为字符串类型;data
字段表示接口返回的数据,必须为对象类型,并且包含 name
、age
、email
等属性。
我们可以使用 curl 命令模拟调用接口并获取返回数据:
---- ----------------------- -- -------------
然后,我们可以使用 ajv-cli 进行校验:
--- -- -------------------- -------------
如果数据符合校验规则,则输出空;否则,输出错误信息。在本例中,由于接口返回的数据符合 response-schema.json
中定义的规则,所以输出为空。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/46797