为什么要发送API状态代码?

时间:2016-03-27 11:49:33

标签: node.js http http-status-codes api-design

我正在用node.js构建我的第一个API,并且想知道我是否需要确保每个响应都发送状态代码,或者只是使用布尔值就可以了。

安全性或其他方面是否至关重要?

代码明智:

return res.status(403).send({ message: 'No token provided.' });

对战

return res.json({ success: false, message: 'No token provided.' });

感谢。

1 个答案:

答案 0 :(得分:6)

每个HTTP客户端都可以理解HTTP状态代码,无论是cURL,浏览器,Web代理还是编程语言库。

如果您只使用200 OK状态代码,那么不了解您的应用程序的客户端将无法从错误中判断成功。如果是代理,这甚至可能导致缓存问题。

除此之外,正确使用代码使用户更容易编写客户端。例如,我可以在Python请求中使用response.raise_for_status或在jQuery中使用$.get().then(onSuccess, onError)