Postman Raw 参数 JSON Schema:参数校验配置与后端数据验证案例
·
Postman Raw 参数 JSON Schema 配置
在Postman的Raw模式下,通过JSON Schema对请求体的JSON参数进行校验,需在Tests脚本中编写验证逻辑。以下为典型配置方法:
const schema = {
"type": "object",
"properties": {
"username": { "type": "string", "minLength": 3 },
"age": { "type": "integer", "minimum": 18 },
"email": { "type": "string", "format": "email" }
},
"required": ["username", "email"]
};
const jsonData = pm.request.body.raw;
const valid = tv4.validate(JSON.parse(jsonData), schema);
pm.test("Schema validation", function() {
if (!valid) {
pm.expect.fail(tv4.error.message);
}
});
后端数据验证案例(Node.js + Express)
后端需同步实现数据验证以确保数据完整性。使用express-validator的示例:
const { body, validationResult } = require('express-validator');
app.post('/api/user', [
body('username').isString().isLength({ min: 3 }),
body('age').isInt({ min: 18 }).optional(),
body('email').isEmail()
], (req, res) => {
const errors = validationResult(req);
if (!errors.isEmpty()) {
return res.status(400).json({ errors: errors.array() });
}
// 业务逻辑处理
});
前后端校验协同要点
前端Postman校验用于开发阶段快速发现问题,后端校验是数据安全的最终防线。建议保持两者的校验规则一致。
JSON Schema支持的高级特性包括正则校验、枚举值、条件校验等。例如对密码复杂度的校验:
"password": {
"type": "string",
"pattern": "^(?=.*[A-Z])(?=.*\\d).{8,}$"
}
更多推荐


所有评论(0)