var postXml = '<?xml version="1.0" encoding="UTF-8"?><root>...</root>';
var serverUrl = 'http://www.xxx.com';
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("POST", serverUrl, true);
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState === XMLHttpRequest.DONE) {
console.log(xmlHttp.status);
if(xmlHttp.status === 200){
console.log("getAllResponseHeaders: "+ xmlHttp.getAllResponseHeaders());
console.log(xmlHttp.responseText);
}
}
}
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;");
xmlHttp.setRequestHeader("Content-Type", "text/xml");
xmlHttp.send(postXml);
上面这段代码现在第一行log能打出
200
getAllResponseHeaders: content-length: 418
content-range: 418
encoding: gzip
说明已经成功得到了返回的zip包,可是打印responseText是空的(废话,一定的)。我该怎么解压缩这个zip包?
ps:说换方法的就不用说了,客户规定的返回的就是zip包,哎。。
谢谢!!
4 个解决方案
#1
有人没。。。哎。。
#2
#3
responseText ,看这个属性名你就知道,是响应文本,你的zip是文本吗?
你在浏览器地址栏访问一下你用ajax请求的地址。看看有没有办法把得到zip解压,并在浏览器中显示xml内容
就算可以,也超出了javascript的能力范围
你在浏览器地址栏访问一下你用ajax请求的地址。看看有没有办法把得到zip解压,并在浏览器中显示xml内容
就算可以,也超出了javascript的能力范围
#4
返回设置类型application/zip
这样就返回zip。。
这样就返回zip。。
#1
有人没。。。哎。。
#2
#3
responseText ,看这个属性名你就知道,是响应文本,你的zip是文本吗?
你在浏览器地址栏访问一下你用ajax请求的地址。看看有没有办法把得到zip解压,并在浏览器中显示xml内容
就算可以,也超出了javascript的能力范围
你在浏览器地址栏访问一下你用ajax请求的地址。看看有没有办法把得到zip解压,并在浏览器中显示xml内容
就算可以,也超出了javascript的能力范围
#4
返回设置类型application/zip
这样就返回zip。。
这样就返回zip。。