ASP.NET Core中间件记录管道图和内置中间件

这篇具有很好参考价值的文章主要介绍了ASP.NET Core中间件记录管道图和内置中间件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

管道记录

下图显示了 ASP.NET Core MVC 和 Razor Pages 应用程序的完整请求处理管道

ASP.NET Core中间件记录管道图和内置中间件,asp.net,中间件,后端

中间件组件在文件中添加的顺序Program.cs定义了请求时调用中间件组件的顺序以及响应的相反顺序。该顺序对于安全性、性能和功能至关重要。 ASP.NET Core中间件记录管道图和内置中间件,asp.net,中间件,后端文章来源地址https://www.toymoban.com/news/detail-646656.html

内置中间件记录

内置中间件
原文 翻译
Middleware Description Order 中间件 描述 命令
Authentication Provides authentication support. Before HttpContext.User is needed. Terminal for OAuth callbacks. 验证 提供身份验证支持。 之前HttpContext.User是需要的。OAuth 回调终端。
Authorization Provides authorization support. Immediately after the Authentication Middleware. 授权 提供授权支持。 紧接着身份验证中间件。
Cookie Policy Tracks consent from users for storing personal information and enforces minimum standards for cookie fields, such as secure and SameSite. Before middleware that issues cookies. Examples: Authentication, Session, MVC (TempData). Cookie 政策 跟踪用户对存储个人信息的同意并强制执行 cookie 字段的最低标准,例如secureSameSite 在发布 cookie 的中间件之前。示例:身份验证、会话、MVC(临时数据)。
CORS Configures Cross-Origin Resource Sharing. Before components that use CORS. UseCors currently must go before UseResponseCaching due to this bug. 跨域资源共享 配置跨源资源共享。 在使用 CORS 的组件之前。由于这个错误,UseCors目前必须先走。UseResponseCaching
DeveloperExceptionPage Generates a page with error information that is intended for use only in the Development environment. Before components that generate errors. The project templates automatically register this middleware as the first middleware in the pipeline when the environment is Development. 开发者异常页面 生成一个包含错误信息的页面,该页面仅供在开发环境中使用。 在产生错误的组件之前。当环境为开发时,项目模板会自动将此中间件注册为管道中的第一个中间件。
Diagnostics Several separate middlewares that provide a developer exception page, exception handling, status code pages, and the default web page for new apps. Before components that generate errors. Terminal for exceptions or serving the default web page for new apps. 诊断 几个独立的中间件,为新应用程序提供开发人员异常页面、异常处理、状态代码页面和默认网页。 在产生错误的组件之前。用于例外情况的终端或为新应用程序提供默认网页。
Forwarded Headers Forwards proxied headers onto the current request. Before components that consume the updated fields. Examples: scheme, host, client IP, method. 转发标头 将代理标头转发到当前请求。 在使用更新字段的组件之前。示例:方案、主机、客户端 IP、方法。
Health Check Checks the health of an ASP.NET Core app and its dependencies, such as checking database availability. Terminal if a request matches a health check endpoint. 健康检查 检查 ASP.NET Core 应用程序及其依赖项的运行状况,例如检查数据库可用性。 如果请求与健康检查端点匹配,则终端。
Header Propagation Propagates HTTP headers from the incoming request to the outgoing HTTP Client requests. 标头传播 将 HTTP 标头从传入请求传播到传出 HTTP 客户端请求。
HTTP Logging Logs HTTP Requests and Responses. At the beginning of the middleware pipeline. HTTP 日志记录 记录 HTTP 请求和响应。 在中间件管道的开始处。
HTTP Method Override Allows an incoming POST request to override the method. Before components that consume the updated method. HTTP 方法覆盖 允许传入的 POST 请求覆盖该方法。 在使用更新方法的组件之前。
HTTPS Redirection Redirect all HTTP requests to HTTPS. Before components that consume the URL. HTTPS 重定向 将所有 HTTP 请求重定向到 HTTPS。 在使用 URL 的组件之前。
HTTP Strict Transport Security (HSTS) Security enhancement middleware that adds a special response header. Before responses are sent and after components that modify requests. Examples: Forwarded Headers, URL Rewriting. HTTP 严格传输安全 (HSTS) 添加特殊响应标头的安全增强中间件。 在发送响应之前和修改请求的组件之后。示例:转发标头、URL 重写。
MVC Processes requests with MVC/Razor Pages. Terminal if a request matches a route. 多维控制器 使用 MVC/Razor 页面处理请求。 如果请求与路由匹配,则终端。
OWIN Interop with OWIN-based apps, servers, and middleware. Terminal if the OWIN Middleware fully processes the request. 欧文 与基于 OWIN 的应用程序、服务器和中间件进行互操作。 如果 OWIN 中间件完全处理请求,则终端。
Output Caching Provides support for caching responses based on configuration. Before components that require caching. UseRouting must come before UseOutputCachingUseCORS must come before UseOutputCaching. 输出缓存 提供对基于配置的缓存响应的支持。 在需要缓存的组件之前。UseRouting必须先来UseOutputCachingUseCORS必须先来UseOutputCaching
Response Caching Provides support for caching responses. This requires client participation to work. Use output caching for complete server control. Before components that require caching. UseCORS must come before UseResponseCaching. Is typically not beneficial for UI apps such as Razor Pages because browsers generally set request headers that prevent caching. Output caching benefits UI apps. 响应缓存 提供对缓存响应的支持。这需要客户的参与才能发挥作用。使用输出缓存来实现完整的服务器控制。 在需要缓存的组件之前。UseCORS必须先来UseResponseCaching。对于 Razor Pages 等 UI 应用程序通常没有好处,因为浏览器通常会设置阻止缓存的请求标头。输出缓存有利于 UI 应用程序。
Request Decompression Provides support for decompressing requests. Before components that read the request body. 请求解压 提供对解压缩请求的支持。 在读取请求正文的组件之前。
Response Compression Provides support for compressing responses. Before components that require compression. 响应压缩 提供对压缩响应的支持。 在需要压缩的组件之前。
Request Localization Provides localization support. Before localization sensitive components. Must appear after Routing Middleware when using RouteDataRequestCultureProvider. 请求本地化 提供本地化支持。 敏感元件本地化之前。使用RouteDataRequestCultureProvider时必须出现在路由中间件之后。
Endpoint Routing Defines and constrains request routes. Terminal for matching routes. 端点路由 定义和约束请求路由。 匹配路线的终端。
SPA Handles all requests from this point in the middleware chain by returning the default page for the Single Page Application (SPA) Late in the chain, so that other middleware for serving static files, MVC actions, etc., takes precedence. 温泉 通过返回单页应用程序 (SPA) 的默认页面来处理中间件链中这一点的所有请求 在链的后期,以便其他用于提供静态文件、MVC 操作等的中间件优先。
Session Provides support for managing user sessions. Before components that require Session. 会议 提供对管理用户会话的支持。 在需要 Session 的组件之前。
Static Files Provides support for serving static files and directory browsing. Terminal if a request matches a file. 静态文件 提供对服务静态文件和目录浏览的支持。 如果请求与文件匹配则终端。
URL Rewrite Provides support for rewriting URLs and redirecting requests. Before components that consume the URL. 网址重写 提供对重写 URL 和重定向请求的支持。 在使用 URL 的组件之前。
W3CLogging Generates server access logs in the W3C Extended Log File Format. At the beginning of the middleware pipeline. W3C日志记录 以W3C 扩展日志文件格式生成服务器访问日志。 在中间件管道的开始处。
WebSockets Enables the WebSockets protocol. Before components that are required to accept WebSocket requests. WebSockets 启用 WebSocket 协议。 在接受 WebSocket 请求所需的组件之前。

到了这里,关于ASP.NET Core中间件记录管道图和内置中间件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【ASP.NET Core 基础知识】--中间件--创建自定义中间件

    一、为什么需要自定义中间件 自定义中间件在ASP.NET Core中的应用主要有以下几个原因: 满足特定需求: 默认情况下,ASP.NET Core提供了许多内置的中间件来处理常见的任务,如身份验证、授权、静态文件服务等。然而,某些项目可能有特定的需求,需要定制化的处理流程,这

    2024年01月17日
    浏览(54)
  • asp.net core中间件预防防止xss攻击

    上面实现思路是针对json序列化后的string字符串进行编码防止xss攻击 其他实现比如中间件、Action的AOP方法也是可以的,可以自己实现 主要是看web项目使用的是那个json序列化工具newtonsoft就用newtonsoft,system.text.json就用下面的那个

    2024年02月07日
    浏览(47)
  • 如何在 ASP.NET Core 配置请求超时中间件

    本文参考官方文档,使用Asp.net core 8.0 的最小API 模板项目,配置超时中间件。 超时中间件可用于所有类型的ASP.NET Core应用:最小 API、带控制器的 Web API、MVC 和 Razor Pages。请求超时的属性位于命名空间 Microsoft.AspNetCore.Http.Timeouts 中。 需要注意的是,当应用在调试模式下运行时

    2024年01月20日
    浏览(46)
  • .net 温故知新【17】:Asp.Net Core WebAPI 中间件

    到这篇文章为止,关于.NET \\\"温故知新\\\"系列的基础知识就完结了,从这一系列的系统回顾和再学习,对于.NET core、ASP.NET CORE又有了一个新的认识。 不光是从使用,还包括这些知识点的原理,虽然深入原理谈不上,但对于日常使用也够了,我想的是知其然,知其所以然。 在实际

    2024年01月18日
    浏览(41)
  • ASP.NET Core如何知道一个请求执行了哪些中间件?

    需要添加两个Nuget包分别是: Microsoft.AspNetCore.MiddlewareAnalysis 和 Microsoft.Extensions.DiagnosticAdapter ,前者是分析记录中间件核心代码实现后者是用来接收日志输出的,由于是用的DiagnosticSource方式记录日志,所以需要使用DiagnosticListener对象的SubscribeWithAdapter方法来订阅。 这个适配器

    2023年04月09日
    浏览(50)
  • ASP.NET Core 的 Web Api 实现限流 中间件

    Microsoft.AspNetCore.RateLimiting  中间件提供速率限制(限流)中间件。 它是.NET 7 以上版本才支持的中间件,刚看了一下,确实挺好用,下面给大家简单介绍一下: RateLimiterOptionsExtensions 类提供下列用于限制速率的扩展方法:​​​​​ 固定窗口限制器 滑动窗口限制器 令牌桶限

    2024年01月17日
    浏览(33)
  • asp.net core 一种基于token 和 Permission 的权限管理中间件示例

    asp.net core webapi 下面,想做一个过滤权限的Filter,配合token,对api做一个较为细粒度的权限控制, 该filter (PermissionFilter) 的作用是用户LoginUser.Permissions 列表中有 Key指定的权限才可以访问,没有则返回403 错误码。   1. 先上封装后的使用效果 说明:要求登录即可,不要求特定权限

    2024年02月05日
    浏览(107)
  • 精通中间件测试:Asp.Net Core实战指南,提升应用稳定性和可靠性

    在上一章节我们实战了在 Asp.Net Core 中的项目实战,这一章节讲解一下如何测试 Asp.Net Core 的中间件。 还记得我们在集成测试中提供的 TestServer 吗? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。包含了用于在测试环境中模拟 ASP.NET Core 应用程序的类和方法。通过使用 TestSe

    2024年04月22日
    浏览(39)
  • .net core 中间件

    先说一下 管道 这个概念: 在ASP.NET Core中,管道(Pipeline)是一个由多个中间件组成的处理请求和生成响应的机制。请求从第一个中间件开始,经过一系列中间件的处理,然后生成最终的响应。 每个中间件都会处理请求,并将请求传递给下一个中间件,直到达到最后一个中间

    2024年02月14日
    浏览(38)
  • .net core 中什么是中间件

    在 .NET Core 中,中间件(Middleware)是 ASP.NET Core 应用程序处理请求和响应的组件。中间件位于应用程序的请求处理管道中,它可以截获请求,执行一些逻辑,并将请求传递给下一个中间件或终止请求的执行。 中间件的主要作用是实现横切关注点,处理跨请求的功能和任务,例

    2024年01月17日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包