6

Mac で NodeJS を使用してテキスト ファイルを読み込もうとしています。ファイルは、同じネットワーク上にある Windows コンピューターにあります。

var fs = require('fs');
var file = "smb://someserver/stuff/names.txt";

fs.readFile(file, 'utf8', function(err, data) {
  if (err) throw err;
  console.log(data);
});

このコードを実行すると、次のようになります。

> Error: ENOENT, open 'smb://someserver/stuff/names.txt'

おそらくファイルへのアクセスを認証する必要がありますが、このシナリオを扱うドキュメントやモジュールは見つかりませんでした。このようなファイルを読み書きすることは可能ですか?

更新 (10/22)

UNC パス (つまり\\someserver\stuff\names.txt) を使用してみましたが、それはソリューションの一部にすぎないと思います。このファイルには特別な許可が必要なため、どうにかしてユーザー名/パスワード/ドメインを指定する必要があります。何らかの方法で許可を与えることは可能ですか? 例えば:

var fs = require('fs');
var file = '\\someserver\stuff\names.txt';
var credentials = { username:'mydomain/jsmith', password:'password' }; ???

fs.readFile(file, 'utf8', function(err, data) {
  if (err) throw err;
  console.log(data);
});
4

2 に答える 2

2

他のネットワーク ドライブからリソースにアクセスしようとしている場合は、UNC パスを使用する必要があります。

var fs = require('fs');
var file = "\\someserver\stuff\names.txt";

fs.readFile(file, 'utf8', function(err, data) {
  if (err) throw err;
  console.log(data);
});
于 2013-10-03T20:00:50.530 に答える