我有一个像
这样的文件{
"fullUserName": "xxyz",
"userFirstName": "xx",
"userLastName": "xx",
"primaryRole": "xy",
"actualRole": "rrr",
"userId": "abcd1234",
"password":"c28f5c7cb675d41c7763ab0c42d",
"type":"login",
"channels":"*"
}
并查看 -
function (doc, meta) {
if(doc.userId,doc.password,doc.type){
emit([doc.userId,doc.password,doc.type],doc);
}
}
当密钥与docment的属性匹配时,它返回文档,否则返回空的JSON,如 -
{"total_rows":2,"rows":[
]
}
现在我想在密钥不匹配时以JSON格式响应错误消息 - 例如 -
{
"Error-Code":"400",
"Error-Msg":"user id and password does not match"
}
有没有办法这样做,如果我向错误的方向移动,请更正。 提前谢谢。
答案 0 :(得分:1)
您不应该直接向用户公开视图查询结果,而是将其解释为。
因此,请创建一个查看请求,查看响应并执行检查的业务逻辑。例如:
"如果结果为空,则只能是因为用户未知或密码哈希与用户不匹配,因此返回特定于业务的错误消息,否则继续登录"
您无法改变服务器的行为和响应格式,无论如何这样做都没有多大意义。这是您与服务器交互方式的API和合同。您应该在两者之间的层中添加自己的业务逻辑。