Экспресс: обслуживание статических файлов для определенных маршрутов - PullRequest
0 голосов
/ 06 декабря 2018

Когда я захожу на mysite.com/verify/myusn, получается ошибка 404.Когда я захожу на mysite.com/, он обслуживает меня, как и ожидалось, на главной странице.

Когда я включил отладчик, я понял, что Express вместо этого пытается обработать статический файл.Но это также показывает, что мой маршрут зарегистрирован правильно.Пожалуйста, помогите мне.

Вот мой отладчик: Debug 1 Debug 2 Debug 3

Вот мой server.js:

var express = require('express');
var app = express();
var path = require('path');

app.get('/*', function(req, res, next){ 
       next(); 
});
app.use(express.static(path.join(__dirname , '/_site/') , {maxAge:0}));
app.use('/assets/', express.static(path.join(__dirname , '/_site/assets') , {maxAge:0}));

var routesLogin = require(path.join(__dirname, '/api/routes/users'));
routesLogin(app);

app.get('/', function(req, res) {
  res.sendFile( path.join(__dirname , '/_site/landing.html'));
});

app.get('*', function(req, res) {
    res.send('404');
});

app.post('*', function(req, res) {
    res.send('404');
});


port = process.env.PORT || 3000;
app.listen(port);
console.log('listening on ' + port);

. / Api / route / users.js:

module.exports = function(app){
var users = require('../controllers/userController');

app.route('verify/:usn')
    .get(users.verifyUSN)
};

. / Api / controllers / userController.js:

exports.verifyUSN = function(req, res, next){
res.status(200)
           .json({
               status: 'success',
               data: data,
               message: 'USN Verified.'
          });
}

1 Ответ

0 голосов
/ 06 декабря 2018

Я полагаю, что ваша проблема потенциально может быть в /api/routes/users.js

module.exports = function(app){
  var users = require('../controllers/userController');

  // previously app.route('verify/:usn')
  app.route('/verify/:usn')
      .get(users.verifyUSN)
};

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...