我正在尝试使用node.js将文件写入/读取到网络位置。
我使用了此处规定的文件路径: Use node js to access a local network drive
我在Windows机器上测试了我的代码,网络位置是我的工作场所网络,在我的计算机网络中可以看到许多系统。我能够成功地将文件读/写到任何这些网络系统。
在此之后我尝试使用UNIX机器使用相同的代码,为此我提供了用户名/密码和机器IP。
但是,当我运行相同的代码并更改路径时,我收到错误消息:
{ [Error: UNKNOWN: unknown error, open '\\<IP-Address>\home\rstudio\work\ru
ing\helloWorld.txt']
errno: -4094,
code: 'UNKNOWN',
syscall: 'open',
path: '\\\\<IP-Address>\\home\\rstudio\\work\\running\\helloWorld.txt' }
以下是我的代码:
var fs = require("fs");
fs.writeFile('\\\\<IP-Address>\\home\\rstudio\\work\\running\\helloWorld.txt', 'Hello World!', function (err) {
if (err) return console.log(err);
console.log('Hello World > helloWorld.txt');
});
对于Windows,我把机器名称而不是IP地址。
请让我知道错误的原因,以及如何在第二种情况下成功写入文件。
答案 0 :(得分:0)
Windows中的本地网络驱动器(例如驱动器W :)与UNIX中挂载的文件系统同义(例如/ foo)。
如果挂载正确,那么writeFile API将无问题地工作,除了路径说明符应该符合UNIX约定(正斜杠而不是双反斜杠)。
如果文件位于另一个系统中并且未安装文件系统,则此机制不起作用。您将需要一个客户端 - 服务器程序对来发送,接收和写入数据。
希望这有帮助。