iphone编程中的SOAP xml响应问题



我是iPhone和SOAP XML请求的新手。我正在使用SOAP web服务从服务器获取响应。我得到以下回复:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"   
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<AuthenticateResponse xmlns="http://tempuri.org/">
<AuthenticateResult>
&lt;DocumentElement&gt;
&lt;Status&gt;
&lt;EMAIL&gt;True&lt;/EMAIL&gt;
&lt;PASSWORD&gt;true&lt;/PASSWORD&gt;
&lt;/Status&gt;
&lt;/DocumentElement&gt;
</AuthenticateResult>
</AuthenticateResponse>
</soap:Body>
</soap:Envelope>

作为回应,我没有得到打开和关闭标记。这就是为什么在解析它的read as字符串时,我无法获得EMAIL和PASSWORD的值。我正在使用NSXMLParser来解析响应。有什么方法可以转换吗??请帮帮我,提前谢谢。

有一个类可以对HTML实体进行编码/解码。用法非常简单,只需将其包含在课堂中即可。它提供了以下方法:

- (NSString *)stringByConvertingHTMLToPlainText;
- (NSString *)stringByDecodingHTMLEntities;
- (NSString *)stringByEncodingHTMLEntities;

所以你可以做一些类似的事情:

NSString *convertedString = [responseString stringByDecodingHTMLEntities];
NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];

您可以将任何NSString转换为NSData,然后传递给NSXMLParser。

您可以使用将NSString转换为NSData

NSData* data = [yourString dataUsingEncoding:NSUTF8StringEncoding];

最新更新