如何将旧的nodejs项目运行到新的Nodejs项目
#node #pm2 #run

要在一个项目中运行两个Node.js项目,您需要按照以下步骤操作:

导航到命令行中的第一个node.js项目的根目录。

运行以下命令以安装第一个项目的软件包中列出的所有依赖项。JSON文件:

npm install

使用以下命令运行第一个项目:

node app.js

注意:用第一个项目的主文件的名称替换“ app.js”。

打开一个新的命令提示符或终端窗口,并导航到您的第二个node.js项目的根目录。

重复第二个项目的步骤2和3。

现在您有两个Node.js项目同时运行。但是,它们尚未彼此集成。

要集成两个项目,您需要创建一个新文件,该文件将充当两个项目的入口点。该文件将导入两个项目的主要文件并将它们一起启动。

创建一个名为“ server.js”或您喜欢的任何其他名称的新文件。

在新文件中,导入两个项目的主要文件并将它们一起启动。这是一个示例:

const app1 = require('./first-project/app.js');
const app2 = require('./second-project/app.js');

app1.listen(3000, () => console.log('First project running on port 3000'));
app2.listen(4000, () => console.log('Second project running on port 4000'));

注意:替换“ ./first-project/app.js”和“ ./second-project/app.js”,分别是您第一个和第二个项目的主要文件的路径。另外,将端口号替换为您要用于每个项目的端口。

保存新文件并使用以下命令运行:

node server.js

现在两个项目都应该一起运行。您可以通过进入第一个项目的“ http://localhost:3000”和第二个项目的“ http://localhost:4000”来访问它们。

彻底测试这两个项目,以确保一切都按预期工作。

步骤您必须遵循

  1. 使用以下命令:

npm install http-proxy-middleware

  1. 在您的第一个Node.js项目的主文件中,导入HTTP-Proxy-Middleware模块:

const { createProxyMiddleware } = require('http-proxy-middleware');

  1. 为您的第二个Node.js项目创建代理中间件:

const secondProjectProxy = createProxyMiddleware({
target: 'http://localhost:4000', // Replace with the address of your second project
changeOrigin: true,
});

  1. 在同一主文件中,创建http.server的新实例:

const server = require('http').createServer();

  1. 为服务器的请求事件添加侦听器:
server.on('request', (req, res) => {
  if (req.url.startsWith('/second-project')) {
    // Use the proxy middleware for requests to the second project
    secondProjectProxy(req, res);
  } else {
    // Handle requests for the first project
    // ...
  }
});

此代码检查请求URL是否以“/second-prodject”开头。如果确实如此,则使用代理中间件将请求转发到第二个项目。否则,请求由第一个项目处理。

  1. 启动服务器并在所需的端口上收听:
server.listen(3000, () => {
  console.log('Server running on port 3000');
});
  1. 在您的第二个项目中,您需要确保将其配置为在其他端口上收听,例如4000个示例。

使用此设置,两个Node.js项目都在单独的端口上运行,但可以使用第一个项目的服务器在同一端口上访问。第一个项目的请求直接通过其自己的代码来处理,而第二个项目的请求通过代理中间件转发到该项目。