小编典典

使用JavaScript将二进制数据转换为base64

html

HTML5使您可以在本地存储数据,我认为这很好。例如,这是如何使用它:

        var store = window.localStorage;
        store.setItem('foo', "hellow world");
        var test = store.getItem('foo');
        // test should = "hellow world"

在html中,您可以通过将图片的源设置为以下内容来动态显示图片:

     "data:image/jpg;base64," + (base64string)

所以我的问题是 如何将二进制数据转换为base64字符串,以便可以利用html5本地存储?

例如,如果我可以:

$.ajax({
   url: 'someImage.png',
   type: 'POST',
   success: function (r) {

                // here I want to convert r to a base64 string !
                // r is not binary so maybe I have to use a different approach
                var data = ConvertToBase64(r);



                document.getElementById("img").src = "data:image/png;base64," + data;
            },
});

我知道我可以通过使用html5将图像包装在画布上并将其转换为base64string来解决此问题。我也可以在服务器上进行特定的服务,该服务将发送该图像的base64字符串数据(someImage.aspx)。
我只想知道是否有可能从服务器检索二进制数据并将其转换为base64字符串。


阅读 3097

收藏
2020-05-10

共1个答案

小编典典

试试这个btoa功能:

   var data = btoa(r);
2020-05-10