我是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>
<DocumentElement>
<Status>
<EMAIL>True</EMAIL>
<PASSWORD>true</PASSWORD>
</Status>
</DocumentElement>
</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];