调用 web 服务时,我需要在调用某些操作时更改响应文本。
因此,我创建了 HttpModule 来捕获响应并对其进行更改。
代码下方:
public class BeginEnd : IHttpModule
{
public void Init(HttpApplication context)
{
context.EndRequest += (o, e) =>
{
HttpContext currContext = HttpContext.Current;
NameValueCollection collection = currContext.Request.QueryString;
if ( collection.Count > 0
&& collection["op"] != null
&& collection["op"] == "ChangeService" )
{
string xmlOther = "<root>My Test</root>";
currContext.Response.Clear();
currContext.Response.Write(xmlOther);
currContext.Response.End();
}
};
}
public void Dispose()
{
}
}
如您所见,我只是清除 Response 对象并输入我的文本。
是一种正确的方法吗?
它正在工作,但我认为我错过了一些东西
你怎么看 ?