【发布时间】:2016-02-08 06:25:38
【问题描述】:
当我尝试使用 'text/xml; 的 dataType 进行 Ajax 查询时; charset=utf-8'... 我得到一个解析器错误。
- xml 响应是有效的 xml
- 响应标头显示 Content-Type 为 'text/xml; charset=utf-8'。
- 不是跨域请求
这三个问题是其他解析器错误问题的答案。
我的 ajax 看起来像这样:
$('#submitLogin2').click(function (e) {
e.preventDefault();
var formData = $('#loginForm2').serialize();
var url = 'http://somewhere.com/Api2.0/Session_Create.aspx';
$.ajax({
url: url, type: "POST", dataType: 'text/xml; charset=utf-8',
data: formData, contentType: 'application/x-www-form-urlencoded; charset=UTF-8',
success: function (data) {
$('#loginResult').html(data.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/ /g, ' ').replace(/\n/g, '<br />'));
},
error: function (textStatus, errorThrown) {
alert(errorThrown);
alert(JSON.stringify(textStatus));
}
});
});
响应是:
<Response><Error code='0'>Invalid User Name or Password</Error></Response>
'text' 请求工作很好......但是让 Ajax 为我解析 xml 会很好。关于如何让它发挥作用的任何想法?
【问题讨论】:
标签: ajax xml xml-parsing