Javascript 从静态文件夹获取图像文件,并在客户端应用程序中显示它们
我将图像存储在express server应用程序的静态文件夹中。到目前为止,这是预期的效果。与此相关的代码如下Javascript 从静态文件夹获取图像文件,并在客户端应用程序中显示它们,javascript,node.js,express,feathersjs,Javascript,Node.js,Express,Feathersjs,我将图像存储在express server应用程序的静态文件夹中。到目前为止,这是预期的效果。与此相关的代码如下 app.use('/uploads', express.static(Path.join(__dirname, `/../uploads`))) 现在,在客户端应用程序中,我需要对这些图像执行GET请求并显示它们,就目前而言,仅对我的图像执行请求就会给我无法使用的数据,我不知道如何处理这些数据。以下是我所说的示例: IHDRXZ��9�|iCCPICC Profile(�c``*I
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请求。从基本上使用express'.sendFile
,这是不起作用的,因为我没有找到404。还有什么不对劲吗
不管怎么说,我想问题是,我如何才能以一种可以在我的客户端应用程序上显示的格式获取文件
这就是我的客户端代码的样子:
return isomorphicFetch(`${MY_URL}/${imageId}`, {
headers: {
Accept: 'application/json'
}
method: 'GET'
})
.then(res => {
console.log('My fetched image', res)
return res
})
为什么不直接使用
顺便说一句,如果出于某种原因,例如发送自定义HTTP头,您希望使用fetch()
:
fetch(`${MY\u URL}/${imageId}`/*…*/)
.then(res=>res.blob())
.然后(blob=>{
const img=document.createElement('img');
img.src=URL.createObjectURL(blob);
某处。儿童(img);
});
数据不是“垃圾”。这可能是一个措词不当的问题,我的意思是,对于我正在尝试做的事情来说,它是不可用的数据,当然,除非有办法使用它。你能在问题中包含客户端代码吗?是的。刚刚用客户端代码更新了OP。console.log(数据类型)
打印什么?isomorphicfeatch
是否提供了将响应类型设置为ArrayBuffer
或Blob
的选项?因为我是哑巴,没有想到要这样做。这很好用!谢谢