我正在尝试使用jsonp激活jQuery.ajax()请求,我收到以下错误:
资源解释为脚本,但使用MIME类型text / xml
进行传输
我的要求是:
return $.ajax({
type: 'GET',
url: this.AgentServiceUrl + "/" + methodName,
async: false,
jsonpCallback: 'jsonCallback',
contentType: "text/xml",
dataType: 'jsonp',
success: function (json) {
console.dir(json.sites);
},
error: function (e) {
console.log(e.message);
}
});
我从服务器获得的响应是:
HTTP/1.1 200 OK
Cache-Control: private, max-age=0
Content-Length: 114
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Wed, 19 Jun 2013 08:43:13 GMT
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://CosmoCom.com/WebServices/TCWS/Agent">010001</string>
我该怎么办?
答案 0 :(得分:0)
正如错误消息所说,当您将数据类型标记为jsonp时。这意味着您将收到的数据将是脚本。所以你不能把你的contenttype作为“text / xml”。 尝试将其更改为“application / json”。
还要确保您的服务启用了jsonp ,这意味着它会返回回调函数中包含的数据。