如何使用next.js应用程序运行节点服务器?

时间:2019-10-27 17:27:48

标签: node.js next.js

我正在next.js中设置一个与节点快速服务器并行运行的web应用程序,该服务器执行一些中间件工作以与API服务器接口。

我可以正常工作,但是在启动npm运行时我不知道如何使它们一起工作。唯一的工作方式是在一个终端上使用“ node server.js”,在另一个终端上使用“ npm run start”。

我试图添加一个package.json脚本,如下所示:     “启动服务器”:“下一个启动&&节点server.js” 但是它只会启动next.js实例,如果我颠倒顺序,那么它只会启动节点实例。

如何使它们都起作用,以便我可以部署该项目?

1 个答案:

答案 0 :(得分:0)

此外,由于Next是服务器端程序包,因此您可以在部署服务器之前构建下一个应用程序以使用server.js代码。 像这样:

/* eslint-disable no-undef */
const express = require('express');
const next = require('next');
const dev = process.env.NODE_ENV !== 'production';
const app = next({ dev });
const handle = app.getRequestHandler();

const options = {
  ...
};

app.prepare().then(() => {
  const server = express();

  server.get('*', (req, res) => {
    return handle(req, res);
  });

  server.listen('8700', err => {
    if (err) throw err;
    console.log(`> Ready on Port 8700`);
  });
});

相关问题