向WCF服务发送请求时是否有错误请求?

时间:2012-06-25 14:54:57

标签: c# wcf

当我使用下面的方法向asmx服务发送xml请求时,它工作正常,唯一的区别是内容类型是application/soap+xml。我收到错误:400 Bad Request。以下是我在下面使用的方法,通过HTTP Post将请求发送到WCF服务:

private static void SendRequest(string request)
{
    var req = (HttpWebRequest) WebRequest.Create("http://urltoservice.svc");
    req.ContentType = "text/xml";
    req.Method = "POST";

    using (var stm = req.GetRequestStream())
    {
        using (var stmw = new StreamWriter(stm))
        {

            stmw.Write(request);
        }
    }


    byte[] myData;
    using (var webResponse = req.GetResponse())
    {

        var responseStream = webResponse.GetResponseStream();
        myData = ReadFully(responseStream);
    }

    // Do whatever you need with the response
    string responseString = Encoding.ASCII.GetString(myData);
}

似乎把它抛到了一行:var webResponse = req.GetResponse()

2 个答案:

答案 0 :(得分:0)

您尝试拨打的服务类型是什么。是REST WCF服务还是SOAP WCF服务?

您可以使用Fiddler监控您的请求,以查看您的请求在工作时及其不会发生时的外观。

同时在您的服务上启用Tracing,以了解您收到400错误请求的原因。

答案 1 :(得分:0)

不知道为什么会这样,如果有人能够解释它会很棒。我需要将方法名称附加到URI才能使其起作用,例如

http://urltoservice.svc/MethodToCall