【发布时间】:2019-05-11 10:56:29
【问题描述】:
在我的 index.js 文件中:
const express = require('express');
const router = express.Router();
// Do work here
router.get('/', (req, res) => {
res.send('Hey! It works!');
});
module.exports = router;
我能够发出第一个请求就好了,但是每个后续请求都只是等待 localhost 直到它超时。
app.js 看起来像:
const express = require('express');
const session = require('express-session');
const mongoose = require('mongoose');
const MongoStore = require('connect-mongo')(session);
const path = require('path');
const cookieParser = require('cookie-parser');
const bodyParser = require('body-parser');
const passport = require('passport');
const promisify = require('es6-promisify');
const flash = require('connect-flash');
const expressValidator = require('express-validator');
const routes = require('./routes/index');
const helpers = require('./helpers');
const errorHandlers = require('./handlers/errorHandlers');
// create our Express app
const app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views')); // this is the folder where we keep our pug files
app.set('view engine', 'pug'); // we use the engine pug, mustache or EJS work great too
// serves up static files from the public folder. Anything in public/ will just be served up as the file it is
app.use(express.static(path.join(__dirname, 'public')));
// done! we export it so we can start the site in start.js
module.exports = app;
start.js 文件如下所示。我应该补充一点,这不是我自己的代码——它是 Wes Bos 的 node.js 教程的一部分。
const mongoose = require('mongoose');
// import environmental variables from our variables.env file
require('dotenv').config({ path: 'variables.env' });
// Connect to our Database and handle any bad connections
mongoose.connect(process.env.DATABASE);
mongoose.Promise = global.Promise; // Tell Mongoose to use ES6 promises
mongoose.connection.on('error', (err) => {
console.error(`???? ???? ???? ???? ???? ???? ???? ???? → ${err.message}`);
});
// READY?! Let's go!
// Start our app!
const app = require('./app');
app.set('port', process.env.PORT || 7777);
const server = app.listen(app.get('port'), () => {
console.log(`Express running → PORT ${server.address().port}`);
});
【问题讨论】:
-
你能发布你的 index.js 文件吗?
-
贴出的代码是index.js文件。抱歉,如果我不清楚这一点
-
我想具体来说,你能发布你的主要 javascript 文件吗?导入路由器并调用类似
app.listen()的文件 -
当然可以。包含 start.js 和 app.js 逻辑。
-
根据我的经验(可能是错误的),您需要将路线连接到快递应用程序。看起来好像您正在定义路线,应用程序不知道它。应该更像这样:documentation
标签: node.js express time localhost out