我工作的公司已开始创建RESTful服务,其中大部分开发外包。来自浏览器的REST身份验证表示
我们的第一项服务是用于用户认证。当用户输入了不正确的用户名和密码浏览器接收200一个状态码和应答体表示为:
{
"state": "FAILED",
"responseCode": 400,
"timestamp": 1310378271300,
"anies": [
{
"errorCode": "-6600",
"errorType": "MSG_ERR_EMPTY_ACCOUNT_API_KEY",
"translation": {
"lang": "en",
"value": "Provided login is empty"
},
"property":"apiKey"
},
{
"errorCode": "-6601",
"errorType": "MSG_ERR_EMPTY_ACCOUNT_API_PASSWORD",
"translation": {
"lang":"en",
"value":"Provided password is empty"
},
"property": "apiPassword"
}
]
}
浏览器与控制器,后者又调用的web服务进行交互。我们也会让客户直接与服务进行交互。
上面的表示包含故障状态(400),一个内部错误代码,因此服务的客户端可以查找特定语言中的错误以及浏览器将用于显示的错误的翻译在屏幕上。 “属性”属性是错误对应的表单元素/参数。
这对我来说感觉不正确。
- 浏览器是否应该收到状态码400,然后查看表示失败的原因?
- 是否应该有翻译文本的属性,或者如果accept头是en,fr等,文本已经被翻译是否合理?
- 还有什么人可以建议吗?
谢谢
我已经在REST用户组上发布了同样的问题,如果其他人想要关注 - http://tech.groups.yahoo.com/group/rest-discuss/message/17606 –