0
我有一個節點快速應用程序作爲前端和一個作爲後端運行的spring/tomcat應用程序。我測試了後端api,並且一切正常,在瀏覽器中,當我提出api請求時,它顯示了json響應。雖然當我在節點推出前端應用程序,並在瀏覽器中輸入的登錄表單憑據(本地主機:3000),形式登錄後它提供了以下錯誤:登錄後顯示快捷區域錯誤應用程序
Express
500 RangeError: port should be >= 0 and < 65536: 8080;
at lookupAndConnect (net.js:945:13)
at Socket.connect (net.js:922:5)
at Agent.exports.connect.exports.createConnection (net.js:68:35)
at Agent.createSocket (_http_agent.js:188:16)
at Agent.addRequest (_http_agent.js:157:23)
at new ClientRequest (_http_client.js:142:16)
at Object.exports.request (http.js:31:10)
at Object.wrappedRequest (/home/yanet/Documentos/remax-fe-master-f73335bb25073887ba387954032ee534ad955002/node_modules/newrelic/lib/instrumentation/core/http.js:124:31)
at /home/yanet/Documentos/remax-fe-master-f73335bb25073887ba387954032ee534ad955002/node_modules/newrelic/lib/transaction/tracer.js:148:22
at ErrorTracer.monitor (/home/yanet/Documentos/remax-fe-master-f73335bb25073887ba387954032ee534ad955002/node_modules/newrelic/lib/error.js:146:12)
我app.js似乎是罰款。當應用程序啓動它顯示消息:
Express server listening on port 3000
這是app.js的一部分,我省略與路由做部分:app.get和app.post。
var express = require('express')
, routes = require('./routes')
, http = require('http')
, path = require('path')
, url = require('url')
, passport = require('passport')
, LocalStrategy = require('passport-local').Strategy
, ensureLoggedIn = require('connect-ensure-login').ensureLoggedIn
, bcrypt = require('bcrypt')
, util = require('util')
, expressValidator = require('express-validator')
, newrelic = require('newrelic')
// Modules Remax
, catalog = require('./routes/catalog')
, login = require('./routes/login')
, user = require('./routes/user')
, rrhh = require('./routes/rrhh')
, stock = require('./routes/stock')
, movements = require('./routes/movements')
, ctasctes = require('./routes/ctasctes')
, ranking = require('./routes/ranking')
, stats = require('./routes/stats')
, statsResumenAgentes = require('./routes/stats.resumen.agentes')
, statsResumenOficinas = require('./routes/stats.resumen.oficinas')
, reports = require('./routes/reports')
, rendicion = require('./routes/rendicion')
, configuration = require('./routes/configuration')
, admin = require('./routes/admin')
, accessControl = require('./routes/accessControl')
, ilist = require('./routes/ilist')
, benchmark = require('./routes/benchmark')
// Redis
, RedisStore = require('connect-redis')(express)
, redis = require("redis")
, redisClient
// App
, app = express()
, flash = require('connect-flash');
/**
* Redis configuration
*/
if (process.env.REDISCLOUD_URL) {
app.use(express.errorHandler());
var redisURL = url.parse(process.env.REDISCLOUD_URL);
redisClient = redis.createClient(redisURL.port, redisURL.hostname, {no_ready_check: true});
redisClient.auth(redisURL.auth.split(":")[1]);
} else {
redisClient = redis.createClient();
}
/**
* Session destroy
*/
process.on('exit', function() {
user.destroy();
});
/**
* Error handling
*/
process.on("uncaughtException", function (err) {
console.log("Error in application: " + err.message);
console.log(err.stack);
console.log("---------------------------------------");
});
/**
* Init user condifguration
*/
user.init();
/**
* App configuration
*/
app.configure(function() {
app.locals({
listaModulosSidebar: accessControl.listaModulosSidebar(),
canViewURL: accessControl.canView
});
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
//app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.compress());
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.cookieParser());
app.use(express.bodyParser());
app.use(expressValidator);
app.use(express.session({
secret: "somekey",
maxAge: new Date() + 2 * 60 * 60 * 1000, //2hs
store: new RedisStore({client: redisClient, ttl: 2 * 60 * 60})
}));
app.use(express.methodOverride());
app.use(flash());
app.use(passport.initialize());
app.use(passport.session());
app.use(accessControl.validate);
app.use(function(req, res, next){
res.locals.loggedUser = req.user;
var i = req.path.indexOf('/', 1);
if(i > 1){
res.locals.modulepath = req.path.substring(0, i);
} else {
res.locals.modulepath = req.path;
}
next();
});
app.use(app.router);
});
app.configure('development', function() {
app.use(express.errorHandler());
});
process.setMaxListeners(0);
/**
* Session
*/
passport.use(new LocalStrategy({
usernameField: 'username',
passwordField: 'password'
}, function (username, password, done) {
user.login(username, password, function(err, user, message){
if (err) {
return done(err);
}
if (!user) {
return done(null, false, {
message: message
});
}
return done(null, user);
});
}));
passport.serializeUser(function (user, done) {
done(null, user);
});
passport.deserializeUser(function (user, done) {
done(null, user);
});
/**
* Create server
*/
http.createServer(app).listen(app.get('port'), function() {
console.log("Express server listening on port " + app.get('port'));
});
您可以提供一個啓動服務器的代碼? – shaochuancs
我編輯了我的問題 –