考虑到我有一个数据收集API,该API正在使用以下资源,
{
user: {
id:"c5667fb4-2348-4ccc-afc4-2309077a09ad"
documents :[
{
type:"PASSPORT",
value:"1234"
issue_date:"11/11/2011"
},
{
type:"DRIVING_LICENSE",
value:"5678"
issue_date:"11/11/2001"
}
]
}
}
对于客户感兴趣的给定用户,我需要能够通过我的API进行评估和响应,并要求提供任何缺少的文档-例如,例如,某个用户在创建时可能只提供了通行证,所以我现在只需要索取DRIVING_LICENSE。
为此,我考虑将控制器端点(例如“评估”)发送能够指示用户丢失哪些数据的响应。
客户端可以调用 POST:/ evaluate / c5667fb4-2348-4ccc-afc4-2309077a09ad 现在说该用户丢失了DRIVING_LICENSE,响应应指示丢失的内容,如下所示-我正在使用json路径定义我要查找的内容
{
required_data:[
{
path:"user.documents[?(@.type=="DRIVING_LICENSE")].type"
}
]
}
这是表达此要求的合理方法,还是有更正确的方法来表达此要求?
答案 0 :(得分:0)
如果请求中缺少某些强制性信息,则为错误情况,在这种情况下,最好提供400个错误HTTP代码和错误响应正文。像这样
HTTP Error Code: 400
Error json body:
{
"errorCode": "Validation",
"message": "Driving license is required"
}