Я не могу разобрать ответ на мыло, я пробовал много способов, но не решил свою проблему, мне нужно значение USERNAME и PASSWORD. Я получаю следующий ответ после запроса мыла:Как разобрать ответ SOAP xml в программировании iPhone
<?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>
<USERNAME>True</USERNAME>
<PASSWORD>true</PASSWORD>
</Status>
</DocumentElement>
</AuthenticateResult>
</AuthenticateResponse>
</soap:Body>
</soap:Envelope>
Вот мой код:
-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *) namespaceURI qualifiedName:(NSString *)qName attributes: (NSDictionary *)attributeDict
{
if ([elementName isEqualToString:@"AuthenticateResponse"]||[elementName
isEqualToString:@"AuthenticateResult"] || [elementName isEqualToString:@"DocumentElement"])
{
statusArray = [[NSMutableArray alloc] init];
}
else if ([elementName isEqualToString:@"Status"])
{
authenticate = [[Authenticate alloc] init];
}
else if ([elementName isEqualToString:@"USERNAME"])
{
currentElementValue = [[NSMutableString alloc] init];
}
else if ([elementName isEqualToString:@"PASSWORD"])
{
currentElementValue = [[NSMutableString alloc] init];
}
}
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if (currentElementValue)
{
[currentElementValue appendString:string];
}
}
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI: (NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([elementName isEqualToString:@"USERNAME"])
{
authenticate.userName = currentElementValue;
}
else if ([elementName isEqualToString:@"PASSWORD"])
{
authenticate.strAuthenticate = currentElementValue;
}
else if ([elementName isEqualToString:@"Status"]) {
[statusArray addObject:authenticate];
}
}
Как я могу получить значение имени пользователя и пароля, может кто-то помочь мне разобрать это. Спасибо заранее.
Пробовали ли вы с помощью любого XML-парсер? – Leijonien
Также посмотрите на связанные вопросы рядом с вашим вопросом, есть куча примеров того, как разбирать xml. – Leijonien
Я использую NSXMLParser, в didStartElement под тегом AuthenticateResult не могу получить значения USERNAME и PASSWORD. – user2586519