当前位置: 首页 > news >正文

手机网站存储登录信息营销网讯

手机网站存储登录信息,营销网讯,北京建设信息网站,wordpress 微信主题下载前言 在实际的应用开发中#xff0c;你或许遇到过异常处理机制不统一或错误信息展示混乱的现象。为了解决这些问题#xff0c;NestJS提供了一个优雅的解决方案#xff1a;过滤器#xff08;Filter#xff09;。本文将从实际出发#xff0c;向你介绍NestJS过滤器的基本概…前言 在实际的应用开发中你或许遇到过异常处理机制不统一或错误信息展示混乱的现象。为了解决这些问题NestJS提供了一个优雅的解决方案过滤器Filter。本文将从实际出发向你介绍NestJS过滤器的基本概念重要用途和深度实例。 什么是NestJS的过滤器 当一个程序运行过程中发生了异常并且这个异常没有被捕获处理用户就会看到一些奇怪的错误信息这种现象对用户体验非常不好。此时NestJS的过滤器就登场啦过滤器可以用来捕捉未被处理的异常然后以一种更有秩序、更友好的方式显示极大提升了用户体验。 NestJS过滤器的使用场景 接下来我们将通过一些代码片段来解析过滤器在不同场景下的应用。 全局错误处理 创建一个全局过滤器来捕获所有未被处理的异常以一致的风格返回给用户。 Catch() export class GlobalFilter implements ExceptionFilter {catch(exception: unknown, host: ArgumentsHost) {// 统一处理异常返回友好的错误信息} } // 在main.ts中全局使用 app.useGlobalFilters(new GlobalFilter()); 定制HTTP响应 可以用过滤器自定义服务器的响应格式。 Catch() export class TransformFilter implements ExceptionFilter {catch(exception: unknown, host: ArgumentsHost) {// 按照自定义的方式来配置返回的HTTP响应} } // 在特定的路由或控制器使用 UseFilters(new TransformFilter()) Controller(example) export class ExampleController { } 异常记录 在捕获异常的同时使用过滤器记录错误信息。 Catch() export class LoggingFilter implements ExceptionFilter {catch(exception: unknown, host: ArgumentsHost) {// 记录异常堆栈信息console.error(exception);} } // 在全局或特定路由使用 app.useGlobalFilters(new LoggingFilter()); 使用案例 下面是两个具体的过滤器使用案例我们会在代码旁边添加详细注释帮助你理解代码的每个部分。 案例一全局异常过滤器 Catch() export class AllExceptionsFilter implements ExceptionFilter {catch(exception: unknown, host: ArgumentsHost) {const ctx host.switchToHttp();const response ctx.getResponseResponse();const request ctx.getRequestRequest();const status exception instanceof HttpException ? exception.getStatus() : 500;// 以统一的JSON格式返回错误信息response.status(status).json({statusCode: status,timestamp: new Date().toISOString(),path: request.url,});} } // 在主文件中全局注册这个过滤器 app.useGlobalFilters(new AllExceptionsFilter()); 案例二记录异常过滤器 Catch(HttpException) export class HttpExceptionFilter implements ExceptionFilter {catch(exception: HttpException, host: ArgumentsHost) {// 将异常信息输出到控制台console.error(Exception occurred: ${exception.message});} } // 在指定的控制器或方法上通过使用装饰器使用这个过滤器 UseFilters(HttpExceptionFilter) export class ExampleController { } 总结 上面例子展示了NestJS过滤器强大的自定义能力我们可以按照应用程序的需要来实现复杂的异常处理逻辑。但是请注意在过滤器中应避免进行太复杂的操作以免增加调试的难度和系统的复杂性。
http://www.dnsts.com.cn/news/11411.html

相关文章:

  • 那些做seo的网站建设部执业注册网站
  • 印刷下单网站开发wordpress 简洁
  • 网站的死链如何做网站宣传
  • 宿迁建设网站php网站空间购买
  • 网站建设项目风险管理的主要内容logo网站在线制作
  • 深圳专门做网站的公司有哪些网页框架是什么
  • 深圳网站建设送域名北京做网站开发的公司
  • 唐山网站从哪里找网站过期原因
  • 专业旅游培训网站建设北京软件设计公司
  • 无锡本地网站有哪些福州网站建设企业
  • jsp网站开发 孟浩pdf宁波技术好的企业网站制作
  • 网站定制开发四大基本原则网站做行业认证好处
  • 免费的网站域名查询565wcc制作公司网站怎样收费
  • 个人网站支付解决方案个人网站 cms
  • 民间it网站建设七牛云wordpress
  • 厦门唯一官方网站制作人是干嘛的
  • 排名网站优化培训婚纱摄影网站报价
  • php彩票网站建设教程石家庄网站建设就找企行家
  • 黄山网站建设怎么做永久免费asp空间
  • 网站建设的前期开发科技布沙发
  • 兰州网站建设程序h5网址
  • 网站营运费郑州比较厉害的短视频公司
  • 宿迁做网站 宿迁网站建设开个网站多少钱一年
  • 做钓鱼网站会被抓判刑吗合网站 - 百度
  • 网站建设捌金手指专业1潍坊专业的瓷砖美缝
  • wordpress开发企业网站wordpress 顶部 浮动
  • 网站设计做微信发现界面大连模板网站制作电话
  • 如何将百度云做成网站文件服务器网站首页制作网站
  • 设计网站遇到的问题网站建设 镇江丹阳
  • 网站域名备案与不备案的区别哪种网站名称容易通过备案审核