【问题标题】:Base64 in JavascriptJavascript 中的 Base64
【发布时间】:2019-05-05 18:34:43
【问题描述】:

我从 java 发送一些图像。 我需要做 URLEncoder 因为我需要在 URL 中发送 Base64 数据

String base64Document = Base64.encode(documentBytes);
base64Document = URLEncoder.encode(base64Document, "UTF-8"); // This class contains static methods for converting a String to the application/x-www-form-urlencoded MIMEformat

但是当我加载这些数据时,我没有任何图像。

我需要一种解码方法。

我的代码适用于画布但不适用于图像

 console.log("Encoded" + vm.documentData.base64Document);
    vm.documentData.base64Document = urlDecode(vm.documentData.base64Document);
    console.log("Decoded" + vm.documentData.base64Document);


   // Decode Safe URL Base64
function urlDecode(encoded) {
    encoded = encoded.replace(/-/g, '+').replace(/_/g, '/');
    while (encoded.length % 4)
      encoded += '=';
      return new ArrayBuffer(encoded || '', 'base64').toString('utf8');
};

html

  <img class="document" src="data:image/png;base64,{{vm.documentData.base64Document}}" />  

GET data:image/png;base64,[object ArrayBuffer] net::ERR_INVALID_URL

【问题讨论】:

    标签: javascript


    【解决方案1】:

    ArrayBuffer.prototype.toString 将始终返回 [object ArrayBuffer]。

    如果需要转成字符串,建议阅读这个答案:Converting between strings and ArrayBuffers

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-05-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-25
      • 1970-01-01
      相关资源
      最近更新 更多