var express = require('express'); var logger = require('morgan'); var bodyParser = require('body-parser'); var methodOverride = require('method-override'); var errorHandler = require('errorhandler'); var session = require('express-session'); var cookieParser = require('cookie-parser'); var app = express(); app.set('port', 8888); app.use(logger('dev')); app.use(methodOverride()); app.use(cookieParser()); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({extended: true})); app.use(session({ resave: false, saveUninitialized: false, secret: '12345', cookie: { maxAge: 1000 * 60 * 60 * 24, // default session expiration is set to 24 hour }, name: 'send', rolling: false })) app.use('/', express.static(__dirname + '/public')); app.use(function(req, res, next) { console.log('hostname:' + req.hostname) var allowOrigins = [ 'http://www.linyqiang.com', "http://localhost:3000", 'http://192.168.1.101:3000' ]; var origin = req.headers.origin; if (allowOrigins.indexOf(origin) > -1 || /(\b|.*\.)linyqiang.com$/.test(origin) === true) { res.setHeader('Access-Control-Allow-Origin', origin); } else { res.setHeader('Access-Control-Allow-Origin', '*'); } res.header('Access-Control-Allow-Credentials', true); res.header('Access-Control-Allow-Methods', 'GET,PUT,DELET,POST'); res.header('Access-Control-Allow-Headers', 'Content-Type,x-access-token,Access-Control-Allow-Headers, Authorization, X-Requested-With'); next(); }) app.use(errorHandler()); process.on('uncaughtException', function(err) { console.log(err); }); var server = app.listen(app.get('port'), function() { console.log('node 正在运行,端口:'+app.get('port')); });