簡體   English   中英

如何在javascript中將字節碼轉換為zip文件

[英]How to convert the byte code to zip file in javascript

即時通訊使用以下代碼將字節碼轉換為zip文件,但它並未下載響應中發送的實際xml和asc文件,而是僅下載了標准zip內容,即時通訊不知道我要去哪里了,任何人都可以幫忙我這樣

 $http({
    url:url,
    method: requestType,
    data:requestBody?requestBody:"",
    headers: {
       'Content-type': "application/json",
       "SessionID":$rootScope.token
    },
    responseType: 'arraybuffer'
}).success(function (data, status, headers, config) {
    let blob = new Blob([data], {type: "application/zip"});
    let objectUrl = URL.createObjectURL(blob);
    let link = document.createElement('a');
    link.href = objectUrl;
    link.download = fileName;
    link.click();
    window.URL.revokeObjectURL(link.href);
    $scope.exp = {}; // to reset the export form after submit.
    $scope.surveyReportdownloading = false;
    $scope.tabActive = false;
 }).error(function (error) {
    //upload failed
    console.log(error);
});

這根本不下載實際文件。 誰能幫我這個忙。 后端團隊發送的字節碼如下。

"PK:8xJMÆVÞ|xl/workbook.xml ¢( ÍnÂ0ïúÖ>@MpR­¸{C,²vdѾ}CR¢¶'n;³³fË«u磵göI­ñ«    ¡+8÷²AþÅvhú]mÐKwⶮµÄBxEwØ ­ñî<´GX¾s(oµ#6°|~b¬¼5;h¼úAöƽîÍd|ñ¿©rMbFVð~!îØ`nT10Wè~Ø4SäiÅÑ,ÇWøÁÿC|¼í¶ëÃzûL/ó4KËYZG0U:üþÂòPK:8xJnmt?Ø[Content_Types].xml ¢( ÅMNÃ0¯y·] vl¡\À²'ÕøGIiÏÆ#q& TUЪº²lÏ{ßõä·÷é|ãl
mð¥#×ÁX¿,EKU~#æ³éË6f\ê±5Q¼u

Na“x¾©Brx2 *½RKÑèZêà<åÔyÙôÕ6 =løxÀ²\\ dwC] ±±Z_˵7¿yè*ÁÝ:?(5¹¦××)ë¯zc¹Áã_S¬ìk°¶w'〜Ädd?èQ9öF¾´ êBÙ/ãâ¼ÃîüÿkiÛ>þfå“Ç㿽Sç=ÉÞ'? ] d£áºEîdþ`s(}Oâ&K \\gJü= x?½wÈþ} PK 38xJ£²×?rels / .rels¢(PK:8xJILE@¥¶xl/worksheets/sheet1.xml¢(¥¥rÇEÅ÷ èn\\ U \\¡\\q®ª%^ ÿþõË́ûà /·W»Ýñì?ÿ|“

任何幫助表示贊賞。 謝謝!

似乎問題出在type參數上,請嘗試以下代碼

您可以從headers訪問content-type

如果不起作用,請嘗試使用application/zip, application/octet-stream

$http({
  url: url,
  method: requestType,
  data: requestBody ? requestBody : "",
  headers: {
    'Content-type': "application/json",
    "SessionID": $rootScope.token
  },
  responseType: 'arraybuffer'
}).success(function(data, status, headers, config) {
  let blob = new Blob([data], {
    type: headers['content-type']
    //               OR
    // type:"application/zip, application/octet-stream"
  });
  let objectUrl = URL.createObjectURL(blob);
  let link = document.createElement('a');
  link.href = objectUrl;
  link.download = fileName;
  link.click();
  window.URL.revokeObjectURL(link.href);
  $scope.exp = {}; // to reset the export form after submit.
  $scope.surveyReportdownloading = false;
  $scope.tabActive = false;
}).error(function(error) {
  //upload failed
  console.log(error);
});

 var blob = new Blob([response.data],{type:headers['content-type']});
  var link = document.createElement('a');
  link.href = window.URL.createObjectURL(blob);
  link.download = "Filename";
  link.click();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM