npm 包 @expresso/errors 使用教程

前言

在现代 Web 开发中,Node.js 是一款非常重要的工具,而 Express.js 又是 Node.js 中最受欢迎、最流行的 Web 框架之一。Express.js 的错误处理非常的常见,但是很多时候错误处理缺乏一个好的工具,这时候 @expresso/errors 这个 npm 包就非常适合了。本文将详细介绍这个 npm 包的用法。

概述

@expresso/errors 是一个工具包,主要是用来对 Express.js 中错误进行更好、更方便的处理。很多时候,我们在开发过程中需要自定义错误信息,并对错误码进行相应的处理,而 @expresso/errors 正好可以帮助我们完成这些任务。

安装

使用 npm 命令行进行安装:

--- ------- ------ ----------------

使用

引入模块

首先,我们需要在文件中引入模块:

----- - --------- - - ----------------------------

HttpError

HttpError 是 @expresso/errors 中最重要的一个类。这个类继承了 Node.js 原生的 Error 类,它的作用是方便我们生成自定义错误对象,并返回给客户端。

HttpError 的使用非常简单,我们只需要通过 new 关键字来实例化一个 HttpError 对象,并传入错误信息和错误码:

----- --- -------------- ------- -----

传入错误信息和错误码后,我们可以得到一个 HttpError 对象。这时候,我们就可以把这个对象返回客户端,告诉客户端发生了什么错误。

HttpError 常见错误码

HttpError 类支持绝大多数 HTTP 错误码,包括 400、401、403、404、500 等。具体错误码列表如下:

  • 400 Bad Request
  • 401 Unauthorized
  • 403 Forbidden
  • 404 Not Found
  • 409 Conflict
  • 500 Internal Server Error

自定义错误码

除了 HttpError 内置的错误码外,我们还可以自定义错误码。如果我们需要传递一些自定义错误码给客户端,我们可以通过继承 HttpError 来实现。

----- -------- ------- --------- -
  -------------------- ----- -
    ---------------
    --------- - -----
  -
-

通过这种方式,我们可以实现自己的错误码,并将错误码传递给客户端。

结合 Express.js 使用

在 Express.js 中,我们可以使用中间件来捕获异常,并且让异常信息更加友好。@expresso/errors 提供了一个 middleware,在使用中间件的时候,我们需要手动引入它并添加到 Express.js 应用程序中。

----- - ---------------------- - - ----------------------------

在 Express.js 应用程序中使用 errorHandlerMiddleware:

--------------------------------

这样,我们就可以在 Express.js 中很方便的使用 @expresso/errors 了。

示例

在实际应用中,我们一般需要实现自定义错误信息,如下所示:

----- ------- - -------------------
----- - --------- - - ----------------------------

----- --- - ----------

------------ ----- ---- -- -
  ----- --- -------------- ------- -----
---

------------- ---- ---- ----- -- -
  -------------------------
  ------------------------- -- -----
  ----------
    -------- ------------
    ------ ----
  ---
---

---------------- -- -- -
  ---------------- --------- -- ---- --------
---

这时候,如果访问 http://localhost:3000 就会获得一个 404 错误,并且返回以下数据:

-
  ---------- ---- -------
  -------- -
    ------- ------------
    ---------- ---- -------
    ------------- ---
  -
-

结语

@expresso/errors 是一个非常好的工具包,它可以方便我们在 Node.js + Express.js 开发中进行错误处理。本文介绍了它的基本使用方法,希望能够帮助到大家。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/154485


猜你喜欢

  • npm 包 @types/path-to-regexp 使用教程

    介绍 在前端开发中,经常需要处理路由相关的操作。path-to-regexp 是一个常用的路由转换工具,它可以将字符串路径转换成正则表达式,或者将路由参数匹配成对应的参数值。

    5 年前
  • npm 包 @types/multistream 使用教程

    随着前端开发的不断发展和进步,前端工程师在日常开发中会使用到各种各样的工具和技术,其中包括 npm 包。本篇文章将重点讲解 npm 包 @types/multistream 的使用教程。

    5 年前
  • npm 包 aurelia-webpack-plugin 使用教程

    前言 在前端开发中,webpack 是最常用的代码打包工具之一。而在使用 webpack 打包 aurelia 项目时,aurelia-webpack-plugin 就是一个非常重要的工具。

    5 年前
  • npm 包 @easy-webpack/assign 使用教程

    在前端开发中,使用各种 npm 包来简化开发过程是常见的做法。其中,@easy-webpack/assign 可以帮助我们很方便地处理 webpack 配置文件。本文将详细介绍该 npm 包的使用方法...

    5 年前
  • npm 包 @ngtools/webpack 使用教程

    前言 在前端开发中,使用 Webpack 是必不可少的一部分。特别是在 Angular 开发中,@ngtools/webpack 是非常重要的依赖包。 本文将介绍 @ngtools/webpack 的...

    5 年前
  • npm 包 @angular/tsc-wrapped 使用教程

    介绍 Angular 是一款广泛使用的前端框架,它提供了一组强大的工具和库,帮助开发人员快速构建高质量的 Web 应用程序。其中之一就是 TypeScript ,是一个面向对象的编程语言,它扩展了 J...

    5 年前
  • npm 包 @types/html-webpack-plugin 使用教程

    介绍 html-webpack-plugin 是一款可以根据模板生成 HTML 文件的插件,能够自动处理 HTML 文件中 CSS 和 JavaScript 的引入、压缩、代码注入等一系列操作,使得前...

    5 年前
  • npm 包 @types/extract-text-webpack-plugin 使用教程

    简介 在前端开发中,Webpack 是一个非常流行的打包工具。Extract Text Webpack Plugin 是一个可以将 Webpack 打包后生成的 JS 和 CSS 分离的插件。

    5 年前
  • npm 包 @t2ym/polymer-cli 使用教程

    简介 如果您是一名前端开发人员,并且熟悉 Polymer 技术栈,那么您就会发现 @t2ym/polymer-cli 是一个非常有用的 npm 工具包。本文将介绍如何使用 @t2ym/polymer-...

    5 年前
  • npm 包 @nuxt/typescript-edge 使用教程

    介绍 在前端开发中,使用 TypeScript 非常流行。Nuxt.js 提供了使用 TypeScript 的解决方案,但是官方文档中的 TypeScript 版本可能会滞后于最新版本。

    5 年前
  • NPM 包 @nuxt/typescript 的使用教程

    Nuxt.js 是一个基于 Vue.js 的通用应用框架,可以帮助我们快速搭建 SSR 项目。在前端开发过程中,我们经常需要使用 TypeScript 来提高代码可读性和可维护性,因此 @nuxt/t...

    5 年前
  • npm 包 @nuxt/types 使用教程

    在前端项目中,构建工具是必不可少的。其中,Nuxt.js 是一个基于 Vue.js 的轻量级服务端渲染框架,它可以帮助我们快速搭建高性能、SEO 友好的应用。而 @nuxt/types 就是 Nuxt...

    5 年前
  • npm 包 @gitzone/tsbundle 使用教程

    简介 @gitzone/tsbundle 是一款 TypeScript 应用打包工具,旨在优化 TypeScript 应用构建速度及打包体积。它基于 Rollup 打包引擎封装,提供了多种压缩策略以及...

    5 年前
  • npm 包 @erect/server 使用教程

    简介 @erect/server 是一种快速搭建前端开发服务器的 npm 包,可以通过简单的配置快速搭建一个本地开发服务器,支持自动刷新、HMR 等功能,适用于前端开发、模板制作、静态页面展示等场景。

    5 年前
  • npm 包 @types/relateurl 使用教程

    在前端开发中,处理 URL 地址是必不可少的操作。在 JavaScript 中,我们通常使用一些库来完成这项工作,其中之一便是 relateurl。但是,由于 TypeScript 和 JavaScr...

    5 年前
  • npm 包 @types/clean-css 使用教程

    在前端开发中,常常需要使用 CSS 压缩工具,以便减少 CSS 文件的大小、提升页面加载速度。其中,clean-css 是一个非常流行的开源的 CSS 压缩工具,它可以大幅度减小 CSS 文件的体积,...

    5 年前
  • NPM包img-switcher使用教程

    介绍 img-switcher是一个轻量级的前端库,可以帮助开发者在网页上实现图片不同状态间的切换。它可以构建一个图片数组,通过调用方法来控制显示不同图片,可以用于动态显示网页上的图片,如以下示例: ...

    5 年前
  • npm 包 gulp-web-build 使用教程

    作为一个前端开发者,必须要掌握一些自动化构建工具,而 gulp.js 是其中最为流行的一个。而 gulp-web-build 这个 npm 包则提供了一些方便快捷的方法来构建前端项目。

    5 年前
  • npm 包 gulp-me 使用教程

    简介 在前端开发中,自动化构建工具是不可或缺的一部分。Gulp 是一个流式构建工具,基于 Node.js 平台构建,可以帮助开发者简化前端构建流程。gulp-me 是一个 Gulp 插件,它可以帮助我...

    5 年前
  • npm 包 @neo-one/react-common 使用教程

    前言 在前端开发中,我们常常需要使用一些通用的工具和组件来实现我们的功能和页面效果。而 npm 是一个非常方便和强大的包管理器,可以让我们轻松地使用这些工具和组件。

    5 年前

相关推荐

    暂无文章