我想创建一个简单的应用程序,其中一个要求是捕获URL后的所有内容。但是这些参数包含斜线/点,什么不包含。像:
localhost:3030/file1.html+css/test.css
我基本上想把localhost:3000/
之后的所有内容放入参数中,然后单独处理。我该怎么办?我使用过app.get('/:string')
,但如果网址中有斜杠,则无效。
由于
答案 0 :(得分:3)
使用req.url
:
var express = require('express');
var app = module.exports = express();
var http = require('http');
http.createServer(app).listen(3000);
app.use(express.logger('dev'));
app.use(app.router);
app.all('*', function(req, res, next){
console.log('req.url');
console.log(req.url);
// from here you might want to use url.parse:
// http://nodejs.org/docs/latest/api/url.html#url_url_parse_urlstr_parsequerystring_slashesdenotehost
res.send(200)
});
//Output:
$ curl http://localhost:3000/foo?bar=baz#hash
req.url
/foo?bar=baz