我有一个名为“ localhost:3000 / returnStat”的服务,该服务应将文件路径作为参数。例如“
/BackupFolder/toto/tata/titi/myfile.txt”。
如何在浏览器上测试此服务?例如,如何使用Express格式化此请求?
exports.returnStat = function(req, res) {
var fs = require('fs');
var neededstats = [];
var p = __dirname + '/' + req.params.filepath;
fs.stat(p, function(err, stats) {
if (err) {
throw err;
}
neededstats.push(stats.mtime);
neededstats.push(stats.size);
res.send(neededstats);
});
};
var http = require('http');
var url = require('url');
var fs = require('fs');
var neededstats = [];
http.createServer(function(req, res) {
if (req.url == '/index.html' || req.url == '/') {
fs.readFile('./index.html', function(err, data) {
res.end(data);
});
} else {
var p = __dirname + '/' + req.params.filepath;
fs.stat(p, function(err, stats) {
if (err) {
throw err;
}
neededstats.push(stats.mtime);
neededstats.push(stats.size);
res.send(neededstats);
});
}
}).listen(8080, '0.0.0.0');
console.log('Server running.');
我尚未测试您的代码,但其他方法可行
如果您想从请求网址获取路径信息
var url_parts = url.parse(req.url);
console.log(url_parts);
console.log(url_parts.pathname);
1.如果您获取的URL参数仍然无法读取文件,请在我的示例中更正您的文件路径。如果将index.html与服务器代码放在同一目录中,它将起作用…
2.如果您要使用节点托管大型文件夹结构,则建议您使用expressjs等框架
如果您想要原始解决方案的文件路径
var http = require("http");
var url = require("url");
function start() {
function onRequest(request, response) {
var pathname = url.parse(request.url).pathname;
console.log("Request for " + pathname + " received.");
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}
http.createServer(onRequest).listen(8888);
console.log("Server has started.");
}
exports.start = start;
来源:http :
//www.nodebeginner.org/
问题内容: 我正在尝试让我的函数返回http get请求,但是,无论如何,它似乎在?scope中丢失了。我对Node.js不熟悉,因此不胜感激 问题答案: 当然,您的日志会返回:您在完成请求之前先进行日志。问题不是范围,而是 异步性 。 是异步的,这就是为什么它将回调作为参数的原因。做您在回调中要做的事情(传递给的):
问题内容: 当我使用Express时,我的代码是: 我将如何获得 原始请求正文 ? 问题答案: 编辑2: 主体解析器模块的1.15.2版引入了原始模式,该模式将主体作为Buffer返回。默认情况下,它还会自动处理deflate和gzip解压缩。用法示例: 默认情况下,该对象具有以下默认选项: 如果您希望原始解析器解析以外的其他MIME类型,则需要在此处进行更改。它还将支持通配符匹配,例如或。 注意
问题内容: 我正在创建一个更新程序,该更新程序使用Node模块下载应用程序文件。如何估算剩余文件大小?这是我的代码的一部分: 问题答案: 这应该为您提供所需的总数: 我得到的内容长度为
问题内容: 基本上,我在这里尝试做的是检索图像并将其转换为base64。 通过阅读此处的评论,它指出: “当然。在将资源作为ArrayBuffer提取后,从中创建一个blob。一旦有了它,就可以直接对base / blob 或进行base64编码 。” 但是,只是,而我需要从图像中获取二进制文件,以便可以将其转换为base64并使用数据将其显示在img标签中。 有人知道如何实现这一目标吗? 先感谢
问题内容: 我有以下django模板(将http:// IP / admin / start /分配给一个名为view的假设视图): 是视图中引用的Django模型的。每当单击“开始”提交输入时,我都希望“开始”视图在返回渲染页面之前使用函数中的数据。如何将POST(在本例中为隐藏输入)中发布的信息收集到Python变量中? 问题答案: 另外,你的隐藏字段还需要一个可靠的名称,然后是一个值: 然后