无法获得快递查找路线

时间:2018-01-24 17:34:39

标签: node.js express

我正在努力调整队友代码,但我还没能理解他们如何完成路由。我试图让Express在最终用户进入Web应用程序的新会话时运行中间件脚本。

我不知道接下来要测试什么,以弄清楚他们是如何完成路由的。

Main.js

// Dependencies
var http = require('http');
var express = require('express');
var path = require('path');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var busboy = require('connect-busboy');
var cors = require('cors');
var mongoose = require('mongoose');

// Configuration
var config = require('./config');
var twilio = require('twilio');
// Database
mongoose.connect(config.database);
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function(){
    console.log('Connected to database');
});

var app = express();
app.set('port', process.env.PORT || 3000);

// Setup middleware
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(cookieParser(config.sessionSecret));
app.use(express.static(path.join(__dirname, 'dist')));
app.use(busboy());
app.use(cors({
    origin: true,
  credentials: true
}));
app.all('/*',function(req,res){
    twilio.notifyOnSession();
    console.log('Message Sent');
})


var server = http.createServer(app);

var port = app.get('port');
server.listen(port);
console.log('Listening on port ' + port);

// Load server router
require('./router')(app);

/router/index.js

var path = require('path');

module.exports = function(app){
  console.log('Initializing server routing');

  require('./auth')(app);
  require('./api')(app);

  // Determine if incoming request is a static asset
  var isStaticReq = function(req){
    return ['/auth', '/api', '/js', '/css'].some(function(whitelist){
      return req.url.substr(0, whitelist.length) === whitelist;
    });
  };

  // Single page app routing
  app.use(function(req, res, next){

    if (isStaticReq(req)){
      return next();
    }
    res.sendFile(path.join(__dirname, '../dist/index.html'));
  });
};

2 个答案:

答案 0 :(得分:0)

您的app.all('/*'正在吞下所有请求,然后才能访问您的路由器。

不要那样做。

答案 1 :(得分:0)

I was able to resolve the issue by creating a new route with twilio.js and having the router look for the url twilio/new. Thanks all for the help.