Node.js 节点fs可以';无法访问静态文件

Node.js 节点fs可以';无法访问静态文件,node.js,express,Node.js,Express,我试图通过Node中的函数访问可公开访问的静态文件(包括.png和.ttf)。文件存在,可以通过浏览器使用URL访问。例如,访问 http://localhost:9000/assets/images/thefile.png 在浏览器中解析图像 但是,如果我尝试使用fs.stat(从StackOverflow上的其他位置提取)测试该文件: 其结果是: Error: { [Error: ENOENT, stat 'http://localhost:9000/assets/images/thef

我试图通过Node中的函数访问可公开访问的静态文件(包括.png和.ttf)。文件存在,可以通过浏览器使用URL访问。例如,访问

http://localhost:9000/assets/images/thefile.png
在浏览器中解析图像

但是,如果我尝试使用fs.stat(从StackOverflow上的其他位置提取)测试该文件:

其结果是:

Error:  { [Error: ENOENT, stat 'http://localhost:9000/assets/images/thefile.png']
errno: 34,
code: 'ENOENT',
path: 'http://localhost:9000/assets/images/thefile.png' }

我发现的所有其他问题都与无法通过浏览器访问静态文件有关,而与节点本身试图访问静态文件无关。我希望有人知道我遗漏了什么。

您无法使用。。。。当您使用fs时。您应该给出文件的路径。
fs
模块用于在本地计算机上处理文件。您可以使用通过URL从web服务器请求文件。@NikhilBaliga这很有意义。我能够做一些尝试和错误,并找出正确的相对路径使用。不过,还有一个问题:像“/dist/public/assets/”这样的相对路径在推送到Heroku时会继续工作吗?我还不完全了解Heroku是如何处理这些文件的。
Error:  { [Error: ENOENT, stat 'http://localhost:9000/assets/images/thefile.png']
errno: 34,
code: 'ENOENT',
path: 'http://localhost:9000/assets/images/thefile.png' }