首页 > 解决方案 > javascript:我想显示原始数据中的图像

问题描述

我是认真的。这让我快疯了。

我想显示来自服务器(nodejs)
节点js代码的原始数据中的图像是这样的

fs.readdir(testFolder, (err, files) => {
  files.forEach(file=>{
    let file_name="./uploads/"+file;
    let data=fs.readFileSync(file_name);
    arr.push(data)
  })
})

然后发送图像数组的原始数据。
如 [ {"type":"Buffer","data":[137,80,78,71,13,10,26,10,0,0,0,13,...]},
{"type ":"缓冲区","数据: ....,}]

我认为这是原始数据。所以我尝试将其编码为base64
,然后创建图像对象。
这是 javascript 代码。

    function alertContents(){
        if(xhr.readyState===XMLHttpRequest.DONE){
            if(xhr.status===200){
                let object=JSON.parse(xhr.response);
                let base=btoa(object[0].data.toString());
                console.log(base)

                let image=new Image();
                image.src=`data:image/png; base64,${base}`
                document.body.appendChild(image);
            }else{
                alert(` :'( `);
            }
        }
    }

这是html。

<body>
<button id="ajaxButton" type="button" onclick="makeRequest()"> HI </button>

</body>

但它不能正常工作。没有错误,但没有加载图像。
你能帮帮我吗?:'(
说真的,我努力解决这个问题几个小时。
但这对我来说真的很难

标签: javascripthtmlweb

解决方案


推荐阅读