位置: 编程技术 - 正文

Node.js下自定义错误类型详解(node.js配置)

编辑:rootadmin

推荐整理分享Node.js下自定义错误类型详解(node.js配置),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:nodejs自动生成接口文档,node自定义模块,node自定义命令,node自定义命令,node自定义命令,nodejs自动生成接口文档,node.js怎么配置,nodejs自定义模块,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

一般来说,很少人会考虑如何处理应用产生的错误的策略,调试的过程中,简单地利用console.log(‘error')定位错误,基本够用了,通过留下这些调试信息,能够为我们以后的调试过程中升了不少时间,提高了维护性。所以错误提示非常重要。同时,也会带来一些比较糟糕用法。最近的项目里就用到了自定义错误类型,觉得有必要深入了解一下,所以就写了这篇文章,方便自己和有需要的大家在需要的时候查阅。

Subclassing Error

首先我们可以定义一个 Error 的子类。通过 Object.create 和 util.inherits 很容易实现:

可以通过 instanceof 来检查错误类型,根据类型进行不同的处理。

Node.js下自定义错误类型详解(node.js配置)

上面的代码设置了自带的message, 并且 error 是 NotFound 和 Error 的一个实例, 但是不是 RangeError。

如果用了 express 框架, 就能设置其他的 properties 让 error 变得更有用。

比方说当处理一个HTTP的错误时, 就可以写成这样:

现在就已经可以通过错误处理的中间件来处理错误信息:

这会发送HTTP的状态码给浏览器, 当 err 的 statusCode 未设置或者等于 的时候, 就通过邮件来发送这个错误。这样就能排除那些 , , 等等的错误。

读取 console.error(err.stack) 事实上并不会像预期那样工作,像 node, chrome 基于 V8 的可以使用 Error.captureStackTrace(this, arguments.callee) 的错误构造函数来进行堆栈跟踪。

当然我们还可以将上面这个创建的抽象错误类型扩展到其他自定义错误中:

总结

标签: node.js配置

本文链接地址:https://www.jiuchutong.com/biancheng/370816.html 转载请保留说明!

上一篇:Node.js包管理器Yarn的入门介绍与安装(node管理工具)

下一篇:学习Node.js模块机制(node.js 模块)

  • 应税工资怎么计算出来的
  • 居民个人所得计算怎么做
  • 进口货物如何确认
  • 一次性年金怎么计算
  • 实收资本能直接转出来吗
  • 收据盖公章要注意哪些
  • 员工继续教育培训费计什么科
  • 劳务所得报酬
  • 会计准则 现金流量
  • 房地产公司转让土地
  • 手工账写错字怎么改呢
  • 当月商品已出库货款未收到怎么做分录?
  • 签合同交什么照片比较好
  • 企业购买黄金如何处理
  • 质保金的税务处理
  • 工会经费的缴费主体
  • 中级会计考试报名
  • 个人缴纳的公积金可以贷款吗
  • 为什么收到发票
  • 工会委员会开票信息
  • 对公工行证书收入摘要写什么
  • 个人独资企业取得的股息红利
  • 企业合并无形资产摊销
  • 企业私募股权投资
  • 企业买进基金用什么账户
  • 土地使用权转让协议
  • 税务实名认证是不是就是税务登记
  • 代个人多交的社保怎么查
  • macOS Big Sur 11.1 RC预览版(20C69)正式更新
  • win7旗舰版叫啥
  • 不能抵扣的发票可以做成本吗
  • 个人将房产过户到一人有限公司交什么税
  • 前端段落空两格怎么设置
  • 野外生存探险家
  • 受托方代扣代缴的消费税计入什么科目
  • 瓦普拉克
  • js处理表格数据
  • opencvcuda
  • 自注意力机制是什么
  • 哪些固定资产不能计提折旧
  • 标书注意事项与如何制作标书
  • 普通发票密码区出格了能用吗
  • 已付款收货未收到发票怎么做账
  • 企业收到银行未收到怎么做账
  • 共同开发产品
  • 计提的费用收到增值税专票
  • 财政收入的收缴具体包括
  • 开专票明细太多怎么开
  • 营改增后企业所得税是国税还是地税
  • sql注入攻击代码
  • 税收滞纳金能不能超过税款
  • 补充协议有用吗
  • 出口退税进项税都抵扣了怎么办
  • 税金及附加是按什么基础交的
  • 融资租赁与经营租赁的区别主要是
  • 股东增资有哪几种方法
  • 票据的提示承兑期限是什么意思
  • sqlserver按时间查询
  • 线上MYSQL同步报错故障处理方法总结(必看篇)
  • 让Windows XP、2003、2008自动登录的设置
  • freebsd版本选择
  • solaris syslog配置
  • windows7的使用期限
  • 怎么调win7
  • winxp系统开机蓝屏
  • WIN7系统如何设置表格默认保存位置
  • ubuntu debian centos
  • SwiftBTN.exe - SwiftBTN是什么进程 有啥作用
  • 安装完win8后没有无线网络
  • linux卸载apache2
  • 如何将windows 10
  • win10正式版激活码
  • java如何自定义函数
  • 详细分析我国针对疫情的国防动员举措
  • unity 版本控制
  • frontpage网页表单
  • js判断浏览器内核和版本
  • 青霉素过敏是因为提纯不好吗
  • 如何计算环保税减征政策
  • 高山白茶和普通白茶的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设