c# - 如何根据Request.InputStream判断调用了哪个WS方法?

标签 c# web-services inputstream httpmodule

在 HttpModule 中,我想弄清楚哪个 Web 方法被调用/拦截,并据此采取行动。例如,如果我调用 WebMethod1,则执行某些操作,但对 WebMethod2 不执行任何操作。

如果我查看soap:Header 和soap:Body,我可以看到方法名称,但是可以解析soap:Envelope吗?如果可以,解析哪一部分?

最佳答案

如果这两个方法有一个公共(public)端点,您需要解析 SOAP 消息以确定调用哪个方法。在这种情况下,您需要检查 <soap:Body> tag 并找到属于 body 标记的第一个元素名称的操作名称。

关于c# - 如何根据Request.InputStream判断调用了哪个WS方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8924139/

相关文章:

java - 如何从 InputStream 创建基于行的可观察对象?

c# - 根据教科书,委托(delegate)循环不会更改 C# 5 和 C# 4 版本之间的行为

c# - 导出div内容为pdf格式

ruby-on-rails - 如何创建一个网络服务

.net - 当我的老板说堆栈时他在说什么?

web-services - 在 SOA 架构中从另一个服务调用服务是否可以?

java - Android InputStream 互联网断开

c# - 如何使用 say MEF 导出和导入应用程序服务?

c# - 使用 XML 文件中有冒号时获取属性

java - 使用 Scanner 时使用 InputStream 读取