此问题与跨源资源共享(CORS,http://www.w3.org/TR/cors/)有关.
如果在发出CORS请求时出错,Chrome(以及AFAIK其他浏览器)也会向错误控制台记录错误.示例消息可能如下所示:
XMLHttpRequest无法加载
http://domain2.example.原产地http://domain1.example不被访问控制允许来源允许的.
我想知道是否有办法以编程方式获取此错误消息?我试过xhr.send()在try/catch中包装我的调用,我也尝试添加一个onerror()事件处理程序.两者都没有收到错误消息.
我正在尝试使用jsZip创建一个zip文件.zip文件的内容是来自网络的图像.我创建了以下代码.但是当我运行它时,我得到的是一个22kb的空zip文件.
<html>
<head>
</head>
<body>
<script type="text/javascript" src="jszip.js"></script>
<script type="text/javascript" src="FileSaver.js"></script>
<script type="text/javascript" src="jszip-utils.min.js"></script>
<script>
var imgLinks=["url1", "url2", "url3"];
function create_zip()
{
var zip=new JSZip();
for(var i=0; i<imgLinks.length; i++)
{
JSZipUtils.getBinaryContent(imgLinks[i], function (err, data) {
if(err) {
alert("Problem happened when download img: " + imgLink[i]);
console.erro("Problem happened when download img: " + imgLink[i]);
deferred.resolve(zip); // ignore this error: just logging
// deferred.reject(zip); // or we may fail the download
} else {
zip.file("picture"+i+".jpg", data, {binary:true});
deferred.resolve(zip);
}
});
}
var …Run Code Online (Sandbox Code Playgroud)