位置: 编程技术 - 正文

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 模块)

  • 个体工商户一直没办税务登记证
  • 未开发票如何确认收入并进行申报
  • 个人所得税汇缴报告
  • 超市发票报销用途写什么
  • 事业单位无形资产管理制度
  • 过渡期损益会计分录
  • 外聘人员劳务费入什么科目
  • 建筑安装工程承包合同
  • 工业企业成本结构
  • 认证后的发票可以留抵下月抵扣吗
  • 普通发票离线限额为0
  • 国税2016年第53号公告解读
  • 公司研发产品
  • 个税起征点是
  • 苹果mac怎么复制文件到u盘 免费软件
  • hdmi连接电视无法全屏
  • dhcp的安全防范
  • win11如何多窗口
  • 银行承兑汇票贴现流程
  • 企业签订的借款合同印花税
  • 研发费用支出税前扣除比例
  • 龙骨花的养殖方法移植
  • 详解HTTP Cookie状态管理机制
  • 企业盘盈资产开什么发票
  • 大自然水族馆怎么样
  • 小微企业的季度所得税怎么计算
  • 金蝶专业版怎么用
  • net命令详解步骤
  • 简单的画
  • chage -l命令
  • blat命令
  • 小规模普票免税的会计分录
  • 收取违约金能作为合同自动终止要件吗
  • 最好最实用的织毛线
  • 销售费用变动率异常
  • 专利技术资本化
  • 支付增值税税控系统技术维护费用
  • 一般纳税人工程劳务发票税率是多少
  • 建筑劳务公司的会计账务处理
  • 对外服务应收取的款项
  • 公司注销时应付账款怎么处理
  • 工会经费的计提比例
  • 持有至到期投资是债权投资吗
  • 长期股权投资的初始计量
  • 卖蒸汽的增值税是多少
  • mysql连接数 是针对db还是服务器
  • 加入黑名单后对方发信息显示什么
  • u盘怎么设置速度快
  • sysscjh.exe是什么文件
  • 安装win8.1系统步骤
  • linux文件系统损坏导致网络断开
  • 获取windows的最新信息
  • linux测试软件
  • win7系统怎么设置屏保
  • win 10设置提醒
  • [置顶]bilinovel
  • 微软企业官网
  • js修改值
  • js基于什么语言
  • Extjs TimeField 显示正常时间格式的代码
  • Jquery ajax基础教程
  • 写一个bat文件
  • unity3d 碰撞
  • 彻底弄懂js中的this指向
  • python选择器
  • window.navigate 与 window.location.href 的使用区别介绍
  • Android中SQLite数据库的使用
  • linux如何配置jdk
  • 完美解决怠速抖动加油就平稳
  • android内存泄露监测
  • unity4.26
  • 如何实现高质量发展
  • 婚前买房婚后个人还贷卖房怎么签字
  • 房地产企业预缴税款最新规定
  • 调查问卷的背景资料怎么写
  • 国家税务总局纳税服务司罗名
  • 云南省国家税务局网上办税服务厅
  • 甘肃税务局电子税务局客服电话
  • 月收入不足1000
  • 差额征税差额开票怎么理解
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设