我正在使用angularjs和typescript
我在我的服务器目录(节点js)上有excel文件我使用来自客户端的post请求下载它并将其转换为blob以便为客户端下载它。
现在我正在尝试使用iframe查看此文件,我尝试将blob网址附加到iframe src,但它无效。
我试过两种方法。1- set blub url to view.officeapps.live.com src
<iframe id="myFrame" src="https://view.officeapps.live.com/op/embed.aspx?src=blob:http://localhost:3000/d39fc225-845c-40af-ba6c-a540ba278a11&wdStartOn=1&wdPrint=1&wdEmbedCode=0" width="100%" height="100%" frameborder="0"></iframe>
我得到一个错误说:发生错误 很抱歉,但出于某种原因,我们无法为您打开。 了解更多
2-我尝试将网址直接设置为iframe:
<iframe id="myFrame" src="blob:http://localhost:3000/d39fc225-845c-40af-ba6c-a540ba278a11&wdStartOn=1&wdPrint=1&wdEmbedCode=0" width="100%" height="100%" frameborder="0"></iframe>
我收到了这个错误: 它可能已被移动或删除。
这是我如何生成blob网址
var ajax = new XMLHttpRequest();
ajax.open("GET", url, true);
ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
ajax.setRequestHeader('Authorization', self.token);
ajax.responseType = 'blob';
ajax.onload = function (e) {
var contentTypeHeader = ajax.getResponseHeader("Content-Type");
var fileUrl = window.URL.createObjectURL(new Blob([e.target['response']], {
type: contentTypeHeader
}));
我也试过ng-src。
请任何人帮忙
感谢