我正在用node.js构建我的第一个API,并且想知道我是否需要确保每个响应都发送状态代码,或者只是使用布尔值就可以了。
安全性或其他方面是否至关重要?
代码明智:
return res.status(403).send({ message: 'No token provided.' });
对战
return res.json({ success: false, message: 'No token provided.' });
感谢。
答案 0 :(得分:6)
每个HTTP客户端都可以理解HTTP状态代码,无论是cURL,浏览器,Web代理还是编程语言库。
如果您只使用200 OK状态代码,那么不了解您的应用程序的客户端将无法从错误中判断成功。如果是代理,这甚至可能导致缓存问题。
除此之外,正确使用代码使用户更容易编写客户端。例如,我可以在Python请求中使用response.raise_for_status
或在jQuery中使用$.get().then(onSuccess, onError)
。