내 서버에서 node.js 익스프레스 서버가 실행 중입니다. 나는 최근에 새 서버로 이전했으며 어떻게 든 이전 코드가 작동을 멈췄습니다. 여기 Node.js 라우트가 작동하지 않음 node.js + 익스프레스 서버
는, 내가 "정의되지 않은"얻을 코드는 콘솔에 로깅 "routes.index"에app.get('/', routes.index);
을 깨는이 줄에 내 서버
var fs = require('fs');
var express = require('express');
var routes = require('./routes');
var https = require('http');
var path = require('path');
var socketio = require('socket.io');
var util = require('util');
var url = require('url');
var HashMap = require('hashmap').HashMap;
var sizeOf = require('image-size');
var DBWrapper = require('node-dbi').DBWrapper;
var DBExpr = require('node-dbi').DBExpr;
var dbConnectionConfig = { host: 'localhost', user: 'mps', password: 'password', database: 'mps_schools' };
dbWrapper = new DBWrapper("pg", dbConnectionConfig);
dbWrapper.connect();
var app = express();
app.set('port', process.env.PORT || 3001);
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));
app.get('/', routes.index);
의 설정입니다
다음은 오류 로그입니다.
/home/mps/node_modules/express/lib/router/index.js:291
throw new Error(msg);
^
Error: .get() requires callback functions but got a [object Undefined]
at /home/mps/node_modules/express/lib/router/index.js:291:11
at Array.forEach (native)
at Router.route (/home/mps/node_modules/express/lib/router/index.js:287:13)
at Router.(anonymous function) [as get] (/home/mps/node_modules/express/lib/router/index.js:318:16)
at Function.app.(anonymous function) [as get] (/home/mps/node_modules/express/lib/application.js:412:26)
at Object.<anonymous> (/home/mps/app22.js:62:5)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
내가 뭘 잘못하고 있니? 감사합니다
불가능에
에서 변경된 app.get에서
을 가져 오려면 다음과 같은 변경,하지만 분명히 'routes' 가져 오기가 실패합니다. 무엇이든 될 수 있지만 환경이 "동일"하고 빌드 프로세스가 손상되지 않았는지 확인해야합니다. –
@DaveNewton과 동의하십시오. 가져 오기 (require ('./ routes');)가 실패했습니다. routes.js 코드와 프로젝트 경로 구조를 게시하십시오. 그렇지 않으면 그 이상의 것을 돕는 것이 어렵습니다. – deChristo
버전 차이가있을 수 있습니까? – user2238284