【发布时间】:2022-12-17 19:10:05
【问题描述】:
在浏览器环境中获取本地文件非常简单:只需要启动服务器(使用 MAMP、XAMP、Mac 的 Python 服务器等...),然后执行以下操作:
fetch("./foo.txt").then(etc...)
然而,在 Node.js 中,这个简单的任务一直是一个挑战。我已经使用 Node 18(带有实验性获取 API)尝试了相同的 sn-p,但我总是得到一个无效的网址错误:
类型错误:无法从 foo.bar 解析 URL
[原因]: TypeError [ERR_INVALID_URL]: 无效的 URL
我试过安装node-fetch,但我遇到了同样的错误。我可以为 http-server 之类的节点启动本地服务器,但它告诉我去 http://localhost:8080 查看服务器,也就是说,使用浏览器,但问题是我可以在没有节点的情况下做到这一点,仅使用节点构建是重点。
我的问题是:是否可以在节点构建(Sublime Text、VS Code 等...)中获取本地文件,没有使用浏览器? (注意:我可以用
fs来做,但在我的问题中我只想讨论fetch)
【问题讨论】:
-
您可以使用 NodeJS 中的 fs (file system) 模块从本地文件系统读取。
标签: javascript node.js server fetch-api