request.url Express和Node

时间:2014-02-14 08:43:42

标签: javascript node.js express

我是node.js的新手,我只想知道如何在此代码中提取请求的网址

app.use(express.static(__dirname+"/public"));

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

正如您在static middleware source上看到的,中间件基本上是一个接收参数(request, response, next_function)的函数。

因此,您可以创建一个在转到静态中间件之前读取URL的函数。

var express = require('express');
var app = express();

var staticfn = express.static(__dirname+'/public');
app.use(function (req,res,next) {
    console.log(req.url);
    var sendStream = staticfn(req,res,next);
    console.log(sendStream.path);
});

app.listen(3000)

正如您在静态中间件使用的send package上看到的那样,send函数返回一个名为SendStream的对象。