gpt4 book ai didi

Node.js发送HTML文件等静态文件

转载 作者:搜寻专家 更新时间:2023-10-31 23:49:47 25 4
gpt4 key购买 nike

我正在使用以下脚本在我的浏览器中显示一个 html 文件:

var sys = require("sys"),
http = require("http"),
url = require("url"),
path = require("path"),
fs = require("fs");

http.createServer(function(request, response) {
var uri = url.parse(request.url).pathname;
var filename = path.join(process.cwd(), uri);
path.exists(filename, function(exists) {
if (!exists) {
response.sendHeader(404, {"Content-Type": "text/plain"});
response.write("404 Not Found\n");
response.close();
return;
}

fs.readFile(filename, "binary", function(err, file) {
if (err) {
response.sendHeader(500, {"Content-Type": "text/plain"});
response.write(err + "\n");
response.close();
return;
}

response.sendHeader(200);
response.write(file, "binary");
response.close();
});
});
}).listen(8080);

sys.puts("Server running at http://localhost:8080/");

但是当我尝试导航到 http://localhost:8080/path/to/file 时,我收到此错误:

Object #<ServerResponse> has no method 'sendHeader'
(at line 16).

我正在使用 node-v0.4.12

最佳答案

在 Node v0.4.12 中没有方法 sendHeader 但看起来方法 response.writeHead(statusCode, [reasonPhrase], [headers]) 具有相同的方法API,因此您可以尝试将 sendHeader 替换为 writeHead

参见:http://nodejs.org/docs/v0.4.12/api/http.html#http.ServerResponse

关于Node.js发送HTML文件等静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7616291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com