在Web服务中读取和重写HttpResponse

时间:2012-11-05 14:20:08

标签: c# httpresponse

我有一个第三方库(C#/。NET),我无法修改源代码。这个第三方库有一个我调用的方法,它直接写入我的webmethod的HttpResponse对象。响应包含状态代码。此响应将返回给客户端,一切都很顺利。

但是,现在我有兴趣找出该方法写入响应对象的状态代码。我想在将响应返回给客户端之前知道这一点,并在必要时重写我认为合适的响应。

所以我的问题基本上是否有办法让我阅读响应对象的内容并覆盖它?而且要明确一点:我说的是服务器发送回客户端的响应,而不是服务器因请求而收到的响应。

2 个答案:

答案 0 :(得分:1)

假设您可以访问HttpResponse对象,可以使用StatusCode属性设置状态代码。

http://msdn.microsoft.com/en-us/library/system.web.httpresponse.statuscode.aspx

您还可以修改其他属性,例如Body,然后在您进行了更改后,您可以调用BeginFlush()将缓冲的响应发送给客户端。< / p>

答案 1 :(得分:0)

通过注册HttpModule并实现事件来检查。粘贴参考链接以获得帮助。

http://www.codeproject.com/Articles/30907/The-Two-Interceptors-HttpModule-and-HttpHandlers http://www.darkside.co.za/archive/2008/03/03/web-page-optmisation-using-httpmodule.aspx http://msdn.microsoft.com/en-us/library/ms227673.aspx