将二进制数组转换为pdf - Jquery

时间:2015-10-23 12:06:57

标签: javascript jquery ajax pdf download

返回二进制数组的Jquery Ajax请求。

$.ajax({
  url: "/documents/docDownload",
  type: "GET",
  headers: {
    responseType: "blob"
  },
  success: function(data) {
    var file = window.URL.createObjectURL(data);
    var a = $("<a/>", {
      "href": file,
      "download": data.name || "detailPDF"
    }).appendTo('body');
    a.click();
    $(window).on('focus', function(e) {
      $('a').remove();
    });
  }
})

现在我需要像原来那样在PDF中转换二进制数组。

尝试了很多情况,甚至将对象转换为blob对象,但没有。

如何解决?

1 个答案:

答案 0 :(得分:0)

也许试试这个:

$.ajax({
  url: "/documents/docDownload",
  type: "GET",
  success: function(data) { // in my jQuery version you should move this out like $.ajax(...).success(function(data) {...}
    var file = new Blob([data], {type: 'application/pdf'});
    var fileURL = window.URL.createObjectURL(file);
    var a = $("<a/>", {
      "href": fileURL,
      "download": data.name || "detailPDF"
    }).html('download!').appendTo('body');
    a.click();
    $(window).on('focus', function(e) {
      $('a').remove();
    });
  }
})

修改

评论之后,我更改了代码,现在它对我有效。