如何通过 http 执行 jsonschemavalidation
How to perform jsonschemavalidation through http?
我已经定义了一个restservice,并尝试用文书工作进行jsonschema验证:
var _ = require('underscore');
var validate = require('isvalid-express');
var paperwork=require('paperwork');
module.exports = function (app) {
app.post('/myroute', paperwork({
username: /[a-z0-9]+/,
password: String,
age: Number,
interests: [String],
jobs: [{
company: String,
role: String
}]
}, function (req, res) {
// ...
}));
};
这是我在邮递员中将其发布到myroute的请求:
{
username: 'brucewayne',
password: 'iambatman',
age: 36,
interests: ['Climbing', 'CQC', 'Cosplay'],
jobs: [{
company: 'Wayne Inc.',
role: 'CEO'
}]
}
但是,它会抛出一个错误:
TypeError: undefined is not a function
at module.exports (c:'heroku'newher'node_codechallenge'node_modules'paperwork'paperwork.js:129:5)
at module.exports (c:'heroku'newher'node_codechallenge'app'testroutes.js:12:26)
at Object.<anonymous> (c:'heroku'newher'node_codechallenge'test.js:16:31)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain [as _onTimeout] (module.js:497:10)
at Timer.listOnTimeout [as ontimeout] (timers.js:112:15)
在node.js中对http进行json模式验证的最佳方法是什么?
您可以考虑使用 JSON 架构标准,而不是文书工作使用的非标准架构定义。
有许多JavaScript JSON Schema验证器,这是基准测试:https://github.com/ebdrup/json-schema-benchmark
相关文章:
- 没有找到相关文章