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");

原文地址:https://www.cnblogs.com/yaoliang11/p/3394476.html