Next.js, API приложения Express.js работает в разработке, но статус 404 в работе - PullRequest
0 голосов
/ 04 ноября 2019

Я развернул на производстве приложение nextjs, expressjs, но получаю 404 для всех API-интерфейсов. У меня есть страницы, которые отлично работают


  var session = require('express-session');
  var passport = require('passport');
  const KnexSessionStore = require('connect-session-knex')(session);
  const knex  = require('./db/knex.js');
  const authMid = require('./config/utils')


  const app = express();
  app.use(compression())
  app.use(cookieParser());
  app.use(bodyParser.json());
  app.use(bodyParser.urlencoded({extended: false}));

  // sesstion
  const store = new KnexSessionStore({
    knex: knex,
    tablename: 'sessions' // optional. Defaults to 'sessions'
  });

  app.use(session({
    name: 'connect.sid',
    store: store,
    secret: 'somesupersecretkey',
    resave: false,
    saveUninitialized: false,
    cookie: {
        maxAge: 1000 * 60 * 60 * 24 * 7 
    },
    // cookie: { secure: false }
  }));


  app.use(passport.initialize());
  app.use(passport.session());

  require("./config/passport");
  require("./config/passport_fb");
  require("./config/passport_google");
  var routes = require('./routes/index');
  routes.mp_routes(app);

  // Server-side
  const route = pathMatch();


  // pages set up
  // private & public
  app.get('/', (req, res) => {
    return nextApp.render(req, res, '/index', req.query)
  })

  app.get('/questions', (req, res) => {
    return nextApp.render(req, res, '/questions', req.query)
  })

И мой файл route / index.js выглядит как

module.exports.mp_routes = (app) => {
  app.use('/api/v1', questionsRoutes),
  app.use('/api/v1', answersRoutes)
}

Все страницы nextjs и express apis отлично работают в разработке. Мне не нужно ничего делать, но на рабочих страницах все работает, но все API говорят о статусе 404. Как мне исправить

...