You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js fs创建文件模块本地服务无法运行,页面持续加载求助

解决Node.js本地服务器持续加载无响应的问题

问题根源

你的代码里有两个核心错误导致服务器无法正常响应:

  • 请求路径判断错误:req是HTTP请求对象,不是路径字符串,必须通过req.url获取当前请求的路径。原代码里if (req=='/')永远不会成立,导致所有请求都进入无响应状态。
  • 未处理非根路径请求:当客户端请求的不是根路径/时,服务器没有返回任何响应,客户端会一直等待直到超时。

修正后的代码

var fs = require('fs');
var http = require('http');

var server = http.createServer(function(req, res) {
    // 正确获取请求路径
    if (req.url === '/') {
        fs.writeFile('mynewfile3.txt', 'New text', function(error) {
            if (error) {
                res.writeHead(500, {'Content-Type': 'text/html'});
                res.write('文件写入失败');
                res.end();
            } else {
                res.writeHead(200, {'Content-Type': 'text/html'});
                res.write('文件写入成功');
                res.end();
            }
        });
    } else {
        // 处理所有非根路径请求,返回404
        res.writeHead(404, {'Content-Type': 'text/html'});
        res.write('页面未找到');
        res.end();
    }
});

server.listen(7070);
console.log('服务器已启动在7070端口');

额外说明

  • 将文件写入失败时的状态码改为500(服务器内部错误),更符合HTTP状态码规范,比原代码的200更合理。
  • 新增非根路径处理逻辑,确保所有请求都能得到响应,避免客户端持续加载。

内容的提问来源于stack exchange,提问作者Meshkat Rangon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 10:05:23