快递js路由缓存清除(heroku)

问题描述 投票:0回答:1

我使用的是 express js 并添加了新的.pug文件,并给出了链接。routes/index.js

但当我试图在浏览器中访问网址时,它被重定向到(404页面未找到)。

我可以知道如何清除路由缓存。在我之前的nodejs应用中,它有pm2,所以我重启了它。但这里没有pm2,我不知道该怎么办?任何帮助将是非常感激的。

注:我已经尝试过这个 联系 但不工作。

编辑

app.js

// set up dependencies
var express = require('express');
var router = express.Router();
//
//
// Home Page
router.get('/', function(req, res, next) {
  res.render('home', {
    meta : {
      title: 'Home'
    }
  })
});
//
//
// About Page
router.get('/about', function(req, res, next) {
  res.render('about', {
    meta : {
      title: 'About Us'
    }
  })
});
//
//
//Partners Page
router.get('/partners', function(req, res, next) {
  res.render('partners', {
    meta : {
      title: 'Partners'
    }
  })
});

//
//
// export the module
module.exports = router;

app.js

// import dependencies
var express = require('express'), // Used for routing https://expressjs.com/
path = require('path'), // allows path combinations https://www.npmjs.com/package/path
favicon = require('serve-favicon'), // serves the favicon from spec. folder https://www.npmjs.com/package/serve-favicon
logger = require('morgan'), // logs errors and output to terminal during node run https://www.npmjs.com/package/morgan
cookieParser = require('cookie-parser'), // allows cookie parsing https://www.npmjs.com/package/cookie-parser
bodyParser = require('body-parser'), // allos parsing of req.body in POST requests https://www.npmjs.com/package/body-parser
session = require('express-session'), // express session storage... just using in-memory sessions https://www.npmjs.com/package/express-session
pug = require('pug'), // pug/jade templating language https://www.npmjs.com/package/pug
timeout = require('connect-timeout'), // sets the timeout on the app before we show error https://www.npmjs.com/package/timeout
compression = require('compression'), // gzip compression for nodejs https://www.npmjs.com/package/compression
port = process.env.PORT || 3000;

// import local dependencies
require('dotenv').config(); // loads CONFIG variables from the .env top-level file

// app internal setup
var app = express(); // sets app to use express
app.set('views', path.join(__dirname, 'views')); // sets up view directory
app.set('view engine', 'pug'); // sets view engine to use pug
app.use(favicon(path.join(__dirname, 'public', 'images', 'icons', 'favicon.ico'))); // sets favicon path
app.use(logger('dev')); // uses morgan/logger to log output to terminal
app.use(bodyParser.json()); // uses bodyParser to parse req
app.use(bodyParser.urlencoded({ extended : true })); // Parses the text as URL encoded data, extended extends UTF chars
app.use(cookieParser('secret')); // sets the session secret
// set up session storage (we dont really need this for this app, no login)
app.use(session({
  secret: 'secret',
  resave: false,
  saveUninitialized: true,
  cookie: { secure: true }
}));
app.use(express.static(path.join(__dirname, 'public'))); // sets static file directory path
app.use(compression()); // uses compression
app.use(timeout('100s')); // sets timeout interval

// set up routing
var routes = require('./routes');
app.use('/', routes);

// error catching
// stacktrace in dev., dislay error page in prod
app.use(function (req, res, next) {
  var err = new Error('Not Found');
  err.status = 404;
  next(err);
});
if (app.get('env') === 'development') {
  app.use(function (err, req, res, next) {
    res.render('error', { 
      meta : {
        title: '404 Page Not Found'
      }
    })
  });
}
app.use(function (err, req, res, next) { // eslint-disable-line no-unused-vars
  res.status(err.status || 404);
  // log the error for heroku logs
  console.log('error', err);
  res.render('error', {});
});

// serve the app on PORT variable
// if using Heroku, this will be automatically set
var server = app.listen(port, function(err) {
  if (err) {
    console.log('App listening error ', err);
  } else {
    console.log('App running at ', port)
  }
});

应用程序文件结构

app
|_ .heroku
|_ .profile.d
|_ node_modules
|_ public
|_ routes
 |_ index.js
|_ views
 |_ home.pug
 |_ about.pug
 |_ partners.pug
|_ .gitignore
|_ app.js
|_ gulpfile.js
|_ package-lock.json
|_ package.json
|_ Procfile
|_ README.md
|_ service-worker.js
express heroku caching routes pug
1个回答
0
投票

最后,我的朋友对代码进行了调试,发现错误是在 partners.pug 文件。间隔问题。于是我又复制了一个pug文件,并重命名为 partners.pug 并连接在 routes/index.js 然后就成功了。也许能帮到别人。

© www.soinside.com 2019 - 2024. All rights reserved.