如何在不同的.NET进程中修改HTTP响应

时间:2010-10-22 17:13:51

标签: c# .net networking

我有一个提供网页的标准网络服务器。

我希望监控端口80上的流量,拦截每个http响应,并为它们添加/注入一个额外的标头。

然后,该过程将充当Web服务器和客户端之间的代理。

你可以给我一些指示吗?我已经知道SharpPCap,但我不确定从哪里开始。

注意:我不能依赖Web服务器,我无法控制它或更改它的配置。但是我可以在同一台机器上安装任何其他进程。

万分感谢

2 个答案:

答案 0 :(得分:1)

我认为SharpPCap在这里太过分了。

尝试:

  • 听一个端口(比如8080)
  • 对于每个传入连接,接受并打开一个到服务器(原始的,端口80)
  • 将客户端的所有内容直接传递到服务器
  • 将来自服务器的所有内容传递回客户端,监控流并在需要时注入/修改

答案 1 :(得分:0)

我认为您可以使用IIS 7.0 URL重写模块完成所需操作,而不是滚动自己的代码。

http://learn.iis.net/page.aspx/711/modifying-http-response-headers/