我是Node.JS的新手,并且已经阅读了很多关于这个主题的内容。但是我陷入了僵局。我想获取文件的绝对路径:
实施例: 的 https://localhost:8080.../public/img/apple.jpg
相反,我只是在控制台或通常情况下没有打印回来:
/public/img,apple.jpg
以下是我在节点中运行的JavaScript文件。我尝试了一些事情,但我相信这些可能是最接近的。
注意:我已经尝试了很多内容' app.get'功能,但似乎永远不会打印到控制台。
var fs = require('fs');
var http = require("http");
var http = require("http");
var url = require("url");
var req = require('request')
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
var express = require('express');
var app = express();
var path = require('path');
app.get('../img/apple.jp', function(req, res) {
var dir = req.params.dir;
console.log(req.originalUrl)
var pathname = url.parse(req.url).pathname;
var fullUrl = req.protocol + '://' + req.originalUrl;
console.log("Request for " + pathname + " received.");
console.log("test" + fullUrl);
// res.sendFile(path.join(__dirname + 'sliderImages.json'));
var fullUrl = req.protocol + '://' + req.get('host') + req.originalUrl;
console.log(fullUrl);
});
我接下来的一些链接如下:
答案 0 :(得分:0)
g
中的../img/apple.jp
。http
两次。req
个对象,但您使用request
代替。 (小心复制/过去其他代码)答案 1 :(得分:0)
问题是(初学者)app.get需要拥有 拥有 端口。我在http.CreateServer中尝试它,因为你认为你现在在其中创建了它。然而,它似乎需要在外面并有自己的端口进行呼叫。
var fs = require('fs');
var http = require("http");
var express = require('express');
var app = express();
var path = require('path');
var http = require("http");
var url = require("url");
var req = require('request')
http.createServer(function (request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
contents = fs.readFileSync("sliderImages.json", "utf8");
response.end(contents);
}).listen(8080);
app.get('sliderImages.json', function(req, res) {
var dir = req.params.dir;
console.log(req.originalUrl)
var pathname = url.parse(req.url).pathname;
var fullUrl = req.protocol + '://' + req.originalUrl;
console.log("Request for " + pathname + " received.");
console.log("test" + fullUrl);
var fullUrl = req.protocol + '://' + req.get('host') + req.originalUrl;
console.log(fullUrl);
res.send(url.parse(req.url).pathname);
});
app.listen(3000);