如何创建自定义 ASP.NET 代码来预处理(修改)HTTP 请求和响应?

问题描述 投票:0回答:0

我目前正在 ASP.NET 中运行第 3 方应用程序(我无法访问其源代码),我想通过创建一个修改和/或删除 cookie 的脚本来稍微修改它的行为由浏览器发送到 Web 服务器,以及修改和/或删除服务器发送的 Set-Cookie 行。

脚本应该能够通过多个 HTTP 请求和响应(而不是为每个请求或响应终止和重新启动)保持持久状态(即,将数据存储在变量中)。

显然,这可以通过创建一个独立的进程来实现,该进程在 HTTP 流量到达服务器(和浏览器)之前拦截并处理它,但我想知道在 ASP.NET 中是否有某种方法可以做到这一点(即。通过编写以某种方式链接到应用程序的 ASPX 脚本或 C# 代码)。

需要一些机制来检查和修改发送到 Web 服务器的 HTTP 请求和响应。

仅供参考,我愿意接受

的可能性
  1. 使用重写模块通过在 web.config 中指定它们来调用 ASPX 脚本——但是,如前所述,脚本必须通过多个请求/响应来保持状态

  2. 将中间件 (C#) 代码添加到 .NET Core 请求和响应管道以过滤流量(使用代码通过多个请求/响应维护其变量),但我想知道如何完成此操作(即添加过滤管道代码)无需对第 3 方应用程序代码进行任何修改

对于 1. 和 2.,请提供示例代码以及该代码的放置位置和调用方式。注意:对于 2.,因为这是第三方应用程序,开发人员无权访问 Startup.cs 或 Program.cs 文件,并且必须在最终调用 app.Run() 之后添加/调用任何中间件

http-headers session-cookies asp.net-core-6.0
© www.soinside.com 2019 - 2024. All rights reserved.