正常的是:<a name="file" download="filename" href="文件地址">filename</a>
为了方便设置请求头,我们可以换一种思路,因为原生的请求方式XMLHttpRequest或者ajax是很方便的设置头部信息的
即:通过ajax获取文件数据---->在动态设置a标签下载
代码如下:
updateFile(file)?{
??????var?xhr?=?new?XMLHttpRequest();
??????xhr.open('GET', '文件地址',?true);
??????xhr.setRequestHeader("X-Authorization",?localStorage.getItem('token'));
??????xhr.responseType?=?'blob';
??????xhr.onload?=?function?(e)?{
????????//如果请求执行成功
????????if?(this.status?==?200)?{
????????????var?blob?=?this.response;
????????????var?filename?=?file.alias;
????????????var?a?=?document.createElement('a');
????????????//?blob.type?=?"application/octet-stream";
????????????//创键临时url对象
????????????var?url?=?URL.createObjectURL(blob);
????????????a.href?=?url;
????????????a.download=filename;
????????????a.click();
????????????//释放之前创建的URL对象
????????????window.URL.revokeObjectURL(url);
????????}
??????};
??????//发送请求
??????xhr.send();
????}