【问题标题】:ASIHTTPClasses and iOS6ASIHTTPClasses 和 iOS6
【发布时间】:2012-09-21 04:43:08
【问题描述】:

我的应用程序在以前的 iOS 版本上运行正常。我刚刚升级到 iOS6,现在应用在处理 XML 请求/响应时返回错误。

应用程序向服务器发送 XML 请求并接收 XML 响应,但现在响应为空“”导致 NSXMLParser 失败。

以下是应用发送请求的方式(这在 ios6 之前可以正常工作):

    [request setURL:[NSURL URLWithString:url]];
[request setHTTPMethod:@"POST"];    
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"text/xml" forHTTPHeaderField:@"Content-Type"];
//[request setValue:@"application/x-www-form-urlencoded charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];




NSURLConnection *conn=[[NSURLConnection alloc] initWithRequest:request delegate:self];
if (conn)
{

    receivedData = [[NSMutableData data] retain];

}

但现在响应为空“”。

 parser error is Error Domain=NSXMLParserErrorDomain Code=9 "The operation couldn’t be completed. (NSXMLParserErrorDomain error 9.)", path to file is :

/Users/ronluna/Library/Application Support/iPhone Simulator/6.0/Applications/5BA74D89-1967-4B9E-A1C0-B076F7BB9064/Documents/Menus.xml

任何想法可能是什么问题?

【问题讨论】:

    标签: ios6 nsxmlparsererrordomain


    【解决方案1】:

    您好,我也遇到了同样的问题。尝试将 xml 文件的格式更改为 UTF-8 without BOM,或者如果您在服务器端脚本上填充 xml,请尝试将字符集更改为 UTF-8。希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      确保您使用以 xml 格式指定的编码创建 NSData 对象。 即,如果 xml 有 utf-8 编码,你应该有: NSData* d = [xmlResponseStrings dataUsingEncoding:NSUTF8StringEncoding]; 在你的代码中, 其他 NSUnicodexxxxxx 编码将不起作用。 希望对您有所帮助。

      【讨论】:

        猜你喜欢
        • 2012-09-12
        • 1970-01-01
        • 1970-01-01
        • 2012-09-15
        • 1970-01-01
        • 2012-09-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多