从静态文件夹中获取图像文件并将其显示在客户端应用程序中
我将图像存储在我的快速服务器应用程序中的静态文件夹中。到目前为止,这是按预期工作。对此很重要的代码如下
app.use('/uploads', express.static(Path.join(__dirname, `/../uploads`)))
现在从客户端应用程序,我需要对这些图像执行GET请求并显示它们,因为它只是在我的图像上做一个请求给我无法使用的数据,我不知道如何处理。以下是我所谈论的一个示例:
IHDRXZ��9�|iCCPICC Profile(�c``*I,(�aa``��+)
rwR���R`������ �`� ��\\��À|����/���J��yӦ�|�6��rV%:���wJjq2#���R��d
有没有办法可以获取这些数据并将其用作图像?
我还阅读了另一种在客户端和服务器之间通过线路发送图像的方法,即设置我的GET请求。来自this thread基本上使用快递'.sendFile
,然而这不起作用,因为我找不到404。还有别的错吗?
无论如何,我想问题是如何以我可以在我的客户端应用程序上显示它们的格式获取文件?
这就是我的客户端代码:
return isomorphicFetch(`${MY_URL}/${imageId}`, {
headers: {
Accept: 'application/json'
}
method: 'GET'
})
.then(res => {
console.log('My fetched image', res)
return res
})
回答如下:
为什么不使用<img>
元素?
const img = document.createElement('img');
img.src = `${MY_URL}/${imageId}`;
someplace.appendChild(img);
BTW,如果由于某种原因,如发送自定义HTTP标头,您想使用fetch()
:
fetch(`${MY_URL}/${imageId}` /*...*/)
.then(res => res.blob())
.then(blob => {
const img = document.createElement('img');
img.src = URL.createObjectURL(blob);
somewhere.appendChild(img);
});