簡體   English   中英

將請求 localhost:3000/api/product 代理到 http://localhost:5000/ 時發生錯誤

[英]Error occurred while proxying request localhost:3000/api/product to http://localhost:5000/

我們正在嘗試使用 Typescript、express 和 nextjs 創建一個簡單的電子商務應用程序。

當我們向它發出請求時,它會拋出以下錯誤。

[HPM] 將請求 localhost:3000/api/product 代理到 http://localhost:5000/ [ECONNREFUSED] ( https://nodejs.org/api/errors.html#errors_common_system_errors ) 時出錯

我的朋友使用的是 Windows,代碼在他的 PC 上運行,但在我的 Ubuntu 桌面上運行。

我嘗試像下面這樣殺死端口。 它也會殺死端口,但這無濟於事。

$ sudo lsof -t -i:5000
6033
$sudo kill -9 6033

$sudo lsof -t -i:3000
6101
$sudo kill -9 6101

代理服務器正在監聽 server.js 文件:

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

const dev = process.env.NODE_ENV !== 'production';
const app = next({ dev });
const handle = app.getRequestHandler();

app
  .prepare()
  .then(() => {
    const server = express();
    // apply proxy in dev mode
    if (dev) {
      server.use(
        '/api',
        createProxyMiddleware({
          target: 'http://localhost:5000',
          changeOrigin: true,
        })
      );
    }

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

    server.listen(3000, (err) => {
      if (err) throw err;
      console.log('> Ready on http://localhost:5000');
    });
  })
  .catch((err) => {
    console.log('Error', err);
  });

找到了解決辦法。

我忽略了node_module和 .gitignore 中的上傳文件夾

克隆后我忘了添加文件夾。 所以,它顯示代理錯誤。

添加上傳文件夾后,錯誤已解決。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM