2016-01-07 129 views
1

我正在编写一个使用SOAP Web服务的.NET应用程序。当我发送我的SOAP请求时,我从服务器收到错误。错误说要检查的事情之一是我通过HTTP Post发送请求,但我不知道如何检查此问题。我从第三方提供的WSDL构建我的代码,所以我调用了他们定义的函数来启动请求。那么我如何告诉它通过HttpPost提交?.NET 4.5 - 通过HttpPost发送SOAP请求

我简要地装饰了我使用此项功能:

[System.Web.Script.Services.ScriptMethod(UseHttpGet = false)] 

但我不认为这就是我所需要的。从我读过的内容来看,只有当一个函数可以直接从脚本中调用时才会使用,而这并不是我写过的。此外,即使它很有用,无论如何,这些功能显然默认为HttpPost。

我也想知道如果我可以在web.config中设置 - 也许在绑定部分?

到目前为止,通过POST发送SOAP请求的例子都适用于.NET 4.0,或者它们使用HttpWebRequest类。但因为我必须通过WSDL中定义的函数提交请求,所以我认为该类不会帮助我...

任何建议都非常感谢!

+1

我会说你应该做的第一件事是检查它是如何使用像Fiddler这样的工具发送的。如果它实际上是通过GET发送的,那么值得尝试改变它,但我的猜测是它已经在使用POST –

+0

谢谢!我会尝试并从那里开始。 – Nate

+0

你最终发现它是如何工作的?如果你现在对自己的问题有一个很好的答案,那么你知道的更多,你可以自己发表一个答案,以防其他人在路上遇到同样的问题 –

回答

1

我要做的第一件事就是检查当前使用诸如Fiddler之类的工具发送请求的方式,该工具可以检查传入和传出的Web请求。通常,根据需要编写SOAP WSDL以使用GETPOST,因此它不应该是您必须更改的内容。

如果它实际上是作为GET请求发送的,那么这是值得修复的,但我怀疑它不是。更可能是请求中的其他问题,并且您收到的警告只是一种通用提示,并不针对您的请求出现问题。