javascript - 尝试从桌面使用 Node js 读取文件时出错

标签 javascript jquery node.js express

我使用以下代码从桌面读取简单文件

module.exports = function (app) {
    app.get('/aa', function(req, res) {

        fs = require('fs');
        fs.readFile('‪C:\\Users\\t56789\\Desktop\\myfile.txt', 'utf8', function (err,data) {
            if (err) {
                return console.log(err);
            }
            console.log(data);
            res.send(data);
        });

    });

当我在浏览器中输入/aa 时,出现以下错误

{ [Error: ENOENT, open 'C:\Users\t56789\WebstormProjects\Ro0.1\?C:\Users\t56789\Desktop\myfile.txt']
  errno: -4058,
  code: 'ENOENT',
  path: 'C:\Users\t56789\WebstormProjects\Ro0.1\?C:\Users\t56789\Desktop\myfile.txt' }

如果我返回 res.send("test") 我能够在浏览器测试中看到... 知道我想念这里什么吗?

最佳答案

由于安全原因,Web 服务器仅限于其当前目录。因此,如果您想访问某个文件,请先将其移动到 Web 服务器的目录中。只是为了证明这个概念,您可以尝试以下代码:

app.get('/aa', function (req, res) {
    var fs = require('fs');
    fs.readFile(__filename, 'utf8', function (err, data) {
        if (err) {
            return console.log(err);
        }
        console.log(data);
        res.send(data);
    });
});

它将显示代码所在文件的内容。

关于javascript - 尝试从桌面使用 Node js 读取文件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30660250/

相关文章:

javascript - Chrome 内容脚本未加载 chrome.google.com

javascript - 错误:No transport method defined

javascript - 为网站选择一个图标形式的图标包

jquery - 滚动时增加背景大小

node.js - 当存在嵌套的 package.json 文件时,Babel 不会编译文件

javascript - puppeteer 选择链接

html - 如何从 Nodejs 获取数据到 Angular 6?

javascript - AngularJS ui-router 条件导航

javascript - 从下拉列表中选择后触发更改事件

php - 使用 Jquery 和 PHP 的 AJAX 复选框