获取图像角度或节点的base64的最佳方法

问题描述 投票:0回答:3

我想获取图像的Base64数据。我使用 Angular 6 作为前端,使用 NodeJS 作为后端。我应该从哪里获取 Base64 字符串?要么在前端计算,要么我必须在后端转换它然后将其发送回前端? 在前端和后端获取 Base64 数据的最佳方法是什么?

javascript node.js angular base64
3个回答
1
投票

您可以在 Angular 和 NodeJS 上转换为 Base64。取决于要求。如果您可以灵活地在任何一方进行转换,我建议您使用nodejs。如果您尝试使用 Angular,此转换将在浏览器上完成,其中浏览器可能会在低端计算机上打开,并且某些文件 api 特定于浏览器。如果文件太大,Filereader 或 Fileonload 将花费更多时间。

但是,由于大多数服务器将托管在高端计算机中,因此它将提高性能并解决处理浏览器兼容性的开销。


0
投票

您可以通过客户端角度中的以下代码获取base64

handleFileSelect(evt){
      var files = evt.target.files;
      var file = files[0];

    if (files && file) {
        var reader = new FileReader();

        reader.onload =this._handleReaderLoaded.bind(this);

        reader.readAsBinaryString(file);
    }
  }



  _handleReaderLoaded(readerEvt) {
     var binaryString = readerEvt.target.result;
            this.base64textString= btoa(binaryString);
            console.log(btoa(binaryString));
    }

0
投票

您可以在前端和后端转换图像。 如果您不需要存储图像,那么最好在前端进行转换。否则,如果您要将图像存储为 base64 格式,那么您可以在服务器端将其转换。

© www.soinside.com 2019 - 2024. All rights reserved.