javascript - nodejs获取配置文件中的当前url

标签 javascript node.js express

我使用express框架,这是我的app.js文件

var express = require('express');
var app = module.exports = express();        
var config = require('./config.js')(app, express); // I include config.js here

var models = {};                                                       
models.item = require('./models/item')(app.mongoose, app).model;

require('./routes')(app, models);

app.listen(process.env.PORT || 3000);

正如你所看到的,我在第 3 行包含了 config.js 文件。这是我的 config.js 文件:

module.exports = function(app, express){
    var config = this;

    //generic config
    app.configure(function(){           
        app.set('CURRENT_URL', '***'); // I don't know how to get current URL here
        app.use(express.bodyParser());
        app.use(express.cookieParser());
        app.use(express.session({ secret: 'topsecret' }));     
        app.use(express.methodOverride());
        app.use(app.router);
        app.use(express.static(__dirname + '/public')); 
    });

    app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));

    return config;
};

在第 6 行,我将 CURRENT_URL 设置为“*”。如何检测这个地方当前的URL?

最佳答案

您可以使用中间件来设置当前 url。

app.use(setCurrentUrl);

function setCurrentUrl(req, res, next) {
    app.set('CURRENT_URL', req.protocol + '://' + req.get('host') + req.originalUrl);
    next();
}

关于javascript - nodejs获取配置文件中的当前url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22283298/

相关文章:

javascript - 启动mongodb和express的正确方法?

node.js - Mongoskin——聚合查询抛出错误,在 mongo cli 中工作正常

javascript - 如何使用 external.IsSearchProviderInstalled 函数?

node.js - TS2345 Sequelize 创建功能

linux - Amazon AWS EC2 Linux 上的 Node-gyp Connect-mongo

javascript - 当 NodeJS 应用程序设计为在客户端上运行时,如何在它的服务器端使用 javascript 库?

node.js - 通过 Node js Express 访问 AWS S3 签名 URL

javascript - 响应式数据表和 Bootstrap 选项卡的问题

javascript - 将带有 grunt 的 CORS 请求代理到本地主机

javascript - 我必须单击按钮两次才能提交