当前位置:  开发笔记 > 前端 > 正文

在REST服务上返回错误消息的最佳方法?

如何解决《在REST服务上返回错误消息的最佳方法?》经验,为你挑选了2个好方法。

我一直在查看REST API的示例,如Netflix http://developer.netflix.com/docs/REST_API_Reference#0_59705和Twitter,他们似乎在statusText标头响应中放置错误消息而不是responseText.我们正在开发一个内部RESTful api,我正在争论发送自定义statusText消息并忽略responseText.

对于我们的应用程序的范围,当用户尝试做他们不应该做的事情时,我们返回错误400,并且将在用户界面中为用户更新的唯一错误消息将以400传递.我是相信消息应该作为一个修改过的statusText发送,但是其中一位工程师(他比我对REST知之甚少)正在争论在responseText中发送它.

什么是最好的方式?



1> SerialSeb..:

HTTP定义您应该在响应实体主体(即responseText)中放置描述性错误消息.

statusText不由任何客户端呈现或处理.

我将使用状态文本作为错误消息类型,即400客户端错误,并使用正文来描述可以呈现给用户的问题,无论客户端可以处理的格式如何.

编辑:请注意,从那时起,存在一种新的标准化格式,以标准方式将错误详细信息传递回客户端,您可以在https://tools.ietf.org/html/rfc7807找到该文件,我建议您这样做.



2> Alex Black..:

我认为你是对的,一般方法是使用HTTP中内置的现有错误机制.

通常,尝试将错误映射到现有的HTTP错误,例如,如果他们请求他们没有权限的东西,则返回403错误.

如果他们要求不存在的东西,请返回404.

亚历克斯

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有