Я написал фрагмент кода Java (Spring controller) для отправки XML-ответа в AJAX. К сожалению, я не могу получить ответ в виде XML, используя xhr.responseXML
, но могу в виде текста, используя xhr.responseText
. Вместо того, чтобы анализировать текст на стороне клиента, кто-нибудь подскажет, в чем проблема? Здесь я прилагаю контроллер и код AJAX.
Spring controller code:
-------------------------------
String xmlResp = "<cities>";
xmlResp+="<city>";
xmlResp+="<name>" + "Hyderabad" + "</name>";
xmlResp+="<population>" + "3000000" + "</population>";
xmlResp+="</city>";
xmlResp+="<city>";
xmlResp+="<name>" + "Bangalore" + "</name>";
xmlResp+="<population>" + "4500000" + "</population>";
xmlResp+="</city>";
xmlResp+="</cities>";
response.setContentType("text/xml");
response.getWriter().write(xmlResp);
AJAX code:
-----------------------------
reading as XML:
var xml=xhr.responseXML;
alert(xml);
reading as Text
var text=xhr.responseText;
alert(text);
для удобства структура XML:
<cities>
<city>
<name>Hyderabad</name>
<population>3000000</population>
</city>
<city>
<name>Bangalore</name>
<population>4500000</population>
</city>
</cities>