尝试使用JavaScript encode
功能下载一组DICOM (Medical Image)坐标时。但是,当我们按下将处理保存事件的按钮时,它会打开一个“另存为:”窗口,要求我们保存文件,但是当我们按“保存时“它说:
失败 - 没有文件
有关问题的更具描述性的信息,图像如下:
我们正在使用CORS (Allow-Control-Allow-Origin) plugin中的Google Chrome,这可能意味着该函数的错误行为。只是想一想这个问题。
这是请求代码:
function download(data, name, type) {
var link = document.createElement("a");
var url = new Blob([JSON.stringify({a: '1'}, null, 4)], {type: type});
link.setAttribute( 'href', url );
link.setAttribute( 'download', name );
var event = document.createEvent( 'MouseEvents' );
event.initMouseEvent( 'click', true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
link.dispatchEvent( event );
}
答案 0 :(得分:2)
function download(data, name, type) {
var url = URL.createObjectURL(new Blob([JSON.stringify({a: '1'}, null, 4)], {type: type}));
link.setAttribute( 'href', url );
link.setAttribute( 'download', name );
}
download('data', 'name', 'text/plain');
<a id="link">download</a>