WSDL2ObjC Unsupported Media Type

调用WCF服务时,出这样的异常“415 Unsupported Media Type”,

 

Because the WCF soap is v1.1, the http header should be text/xml.

 

binding.logXMLInOut = YES; can help to debug.

 

you should modify the file

    [request setValue:@"application/soap+xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

-------->

    [request setValue:@"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

 

if ([urlResponse.MIMEType rangeOfString:@"application/soap+xml"].length == 0)

----------->

if ([urlResponse.MIMEType rangeOfString:@"text/xml"].length == 0)

 

xmlNsPtr soapEnvelopeNs = xmlNewNs(root, (const xmlChar*)"http://www.w3.org/2003/05/soap-envelope", (const xmlChar*)"soap");

------------->

xmlNsPtr soapEnvelopeNs = xmlNewNs(root, (constxmlChar*)"http://schemas.xmlsoap.org/soap/envelope/", (constxmlChar*)"soap");

posted @ 2013-10-29 15:58  冰岛  阅读(382)  评论(0编辑  收藏  举报