Javascript 文件上传-节点Js(Express)以响应Js。如何获得正确的图像路径?

Javascript 文件上传-节点Js(Express)以响应Js。如何获得正确的图像路径?,javascript,node.js,reactjs,api,express,Javascript,Node.js,Reactjs,Api,Express,我正在本地系统上工作,并在NodeJS中开发文件上传功能。目前我的文件结构如下 Project ..client .... source code of React App ..Server ....uploads ......avatar ........image.png ....index.js 这里,服务器是节点js代码,客户端是React js代码 因此,我开发了一个API将图像上传到“服务器/上传/化身”。正如您所看到的,在“上传”文件夹中有一个名为“avatar.png”的图像

我正在本地系统上工作,并在NodeJS中开发文件上传功能。目前我的文件结构如下

Project
..client
.... source code of React App
..Server
....uploads
......avatar
........image.png
....index.js
这里,服务器是节点js代码,客户端是React js代码

因此,我开发了一个API将图像上传到“服务器/上传/化身”。正如您所看到的,在“上传”文件夹中有一个名为“avatar.png”的图像

我的问题是,显示什么路径来访问具有完整域路径的特定映像?我希望在API中得到这种结果。 例如
{阿凡达:“*”}。考虑*作为剩余图像路径。但我无法访问客户端的映像。我不知道这是不是正确的方法。
可能我需要在index.js文件中为NodeJ设置静态路径。不确定。

您应该在express配置中设置静态文件夹路径,如下所示:

http://localhost:3000/kitten.jpg
app.use(express.static('public'))

当然,您需要创建具有此名称的新文件夹,然后您可以将所有资产放入其中,之后您将能够访问以下文件:

http://localhost:3000/kitten.jpg

但我还需要为React js的index.html设置在节点服务器上运行的静态路径。app.use(express.static(path.join('client/build'));get('*',function(req,res){res.sendFile(path.join(uu dirname,'client','build','index.html');});您只需在组件中添加相对于公用文件夹的图像路径,express就会自动为请求的文件提供服务。您不必处理此功能。