我正在尝试通过帖子请求访问请求的时区标头。我能够在app.js中访问它,但无法在请求路径文件中访问它。
app.js
var express = require('express');
var apiRoutes = express.Router();
var apiHeader = express.Router();
var bodyParser = require('body-parser');
server = require('http').createServer(app);
var customer = require(__dirname + "/bin/customer.js");
var app = express();
app.use(bodyParser.json());
app.use(function(req, res, next) {
res.setHeader('Access-Control-Allow-Headers', 'timezone');
next();
});
apiHeader.use(function(req, res, next) {
var timezone = req.body.timezone || req.query.timezone || req.headers['timezone'];
next();
}
})
app.use('/', apiHeader);
app.post('/api/add/addcalllog', customer.addcalllog);
customer.js
var moment = require('moment-timezone');
exports.addcalllog = function(req, res) {
console.log(timezone);
}
您可以将时区附加到请求上的新对象,该对象将在next()之后被路由访问。
req.timezone = //your stuff here
但我强烈建议您选择一种不是三种数据交换方法。