如何使用 node.js 打开服务器上的文件
How to open a file on a server using node.js
我正在使用 Node.js 脚本读取并 return 使用此函数从 .txt 文件中随机读取一行:
function pickMeal(){
var meals = fs.readFileSync('meals.txt','utf8');
var mealsArray = meals.toString().split('\n');
return mealsArray[Math.floor(Math.random()*mealsArray.length)];
}
在我的桌面上,它工作正常。当我将 .js 文件和 .txt 文件都上传到服务器上的文件夹时,突然出现 Error: ENOENT, no such file or directory 'meals.txt'
。
我正在使用 Amazon EC2 服务器,.js 脚本和 .txt 文件位于同一目录中。可能是.txt文件的权限有问题?
我已经尝试将脚本定向到 ~/folder/meals.txt
甚至文件的整个 http link,但我得到了相同的结果。
感谢您的帮助!
节点将尝试从系统根目录读取文件。您必须提供完整的路径名。
var path = require('path');
var txtpath = path.join(__dirname, 'folder_where_txt_file_is', 'txtfile.txt');
// now you can read the txt path
我正在使用 Node.js 脚本读取并 return 使用此函数从 .txt 文件中随机读取一行:
function pickMeal(){
var meals = fs.readFileSync('meals.txt','utf8');
var mealsArray = meals.toString().split('\n');
return mealsArray[Math.floor(Math.random()*mealsArray.length)];
}
在我的桌面上,它工作正常。当我将 .js 文件和 .txt 文件都上传到服务器上的文件夹时,突然出现 Error: ENOENT, no such file or directory 'meals.txt'
。
我正在使用 Amazon EC2 服务器,.js 脚本和 .txt 文件位于同一目录中。可能是.txt文件的权限有问题?
我已经尝试将脚本定向到 ~/folder/meals.txt
甚至文件的整个 http link,但我得到了相同的结果。
感谢您的帮助!
节点将尝试从系统根目录读取文件。您必须提供完整的路径名。
var path = require('path');
var txtpath = path.join(__dirname, 'folder_where_txt_file_is', 'txtfile.txt');
// now you can read the txt path