我有一个只能发送 SOAP 消息和解析响应的应用程序。如果我使用代理客户端,我的 WCF 服务工作正常,但我需要能够以 SOAP 格式发送 POST 请求,就像在旧的 ASMX 服务中一样。有没有可能做到?
我尝试从调试 wcf 客户端复制 SOAP 请求并将其作为带有内容类型文本/xml 的 POST 请求发送,但它没有给我正确的结果。
最佳答案
是的,您可以使用“普通”HTTP 请求调用它们 - 毕竟,就服务器而言,它接收的所有内容都是 TCP 连接中的字节。根据您使用的绑定(bind),您可能还需要设置一些 HTTP header - 如果您在服务上使用 BasicHttpBinding,您还需要设置 SOAPAction
header 。尝试使用 WCF 代理发送您的请求和来自客户端的请求,并在 Fiddler 等工具中比较它们。如果请求相同,服务器也将响应相同。
关于c# - 在没有代理客户端的情况下使用 WCF 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14054597/