我正在编写一个小型的宁静服务器。
我可以使用http适当的响应代码处理错误,我可以在响应正文中放置一条错误消息。假设某个客户端在没有所需权限的情况下尝试访问http://very/reserved/area
:
Status: 401
Body: You are not allowed to perform this operation
我想为200 - OK回复添加一条消息,例如假设一些客户发布了一些用户的数据来创建一个新帐户:
Status: 200
Body (JSON): {
username: 'a fresh added user',
email: 'his email address',
name: 'his name'
etc
}
__some_http_header__: 'A new user has been created.'
我知道我可以
Status: 200
Body (JSON): {
data: {
username: 'a fresh added user',
email: 'his email address',
name: 'his name'
etc
},
message: 'A new user has been created.'
}
但这正是我想要避免的。
通过这种方式,我可以保持响应数据的轻量级,而无需元数据开销。
问题:这是一个好习惯吗?哪个标题适用于此目的?
答案 0 :(得分:1)
没有理由不为此目的创建标题。
X-Status-Message等等。
这种做法没有错。
在这种特定情况下,虽然正文可以包含刚刚作为200回复的一部分创建的资源(也没有真正的错误),但实践是返回一个Location头,其中包含指向新资源的链接,可以检索表示。
记录标题取决于资源及其表示的外部文档。