mik*_*ana 9 http magic-numbers http-status-codes node.js express
好的,每个人都知道200没关系,找不到404.但是对于永久与临时重定向或需要付款或其他更奇特的HTTP错误代码之类的东西,最好做以下事情:
response.status('REQUEST_ENTITY_TOO_LARGE');
Run Code Online (Sandbox Code Playgroud)
而不是仅仅使用一般被认为是不好的魔术数字.当然,我可以在某个对象中有413:'REQUEST_ENTITY_TOO_LARGE',但是Express已经有了状态代码的副本 - >名称映射,我宁愿不重复它.
如何在Express JS中按名称指定响应状态?
编辑:感谢@Akshat指出http.STATUS_CODES.阐述他的答案,因为价值观本身是独一无二的,人们可以运行:
var statusCodeByName = {};
for ( var number in http.STATUS_CODES ) {
statusCodeByName[http.STATUS_CODES[number]] = number
}
Run Code Online (Sandbox Code Playgroud)
这允许一个人:
> statusCodeByName['Request Entity Too Large']
'413'
Run Code Online (Sandbox Code Playgroud)
sto*_*one 11
有一个Node模块就是为了这个目的:http-status-codes.
https://www.npmjs.org/package/http-status-codes
这是文档说的内容:
安装
npm install http-status-codes
用法
var HttpStatus = require('http-status-codes');
response.send(HttpStatus.OK);
response.send(
HttpStatus.INTERNAL_SERVER_ERROR,
{ error: HttpStatus.getStatusText(HttpStatus.INTERNAL_SERVER_ERROR) }
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13589 次 |
| 最近记录: |