1

这是一个典型的 img,其中 src 有一个 blob:

<img class="gwt-Image" src="blob:a7cb8111-cf35-4c3a-8295-bdda0ff66caf">

有没有办法让我的 GWT 应用程序下载获取他的 blob 数据以进行客户端操作?

我试过这个:

private native String blobToBase64(String source)/*-{
    var xhr = new XMLHttpRequest();
    xhr.open('GET', source, true);
    xhr.responseType = 'blob';
    xhr.onload = function(e) {
      if (this.status == 200) {
        var myBlob = this.response;
        alert("Converted to Blob");
      }
    };
    xhr.send();
}-*/;

但是,当传递 blob 源时,警报框不会出现,因此它不起作用。this.status回应是0

4

1 回答 1

1

也许像

button.setAttribute("download", "filename.png");    
String url = "data:Application/octet-stream;base64," + blobAsBase64;
button.setHref(url);

单击按钮时,应使用提供的文件名下载文件。

另一种方法是使用点击处理程序,它使用

Window.open(url, "_blank", "menubar=no,status=no");
于 2014-09-10T09:33:41.713 回答