为什么 express 服务器监听的端口与我的 React 应用程序所在的端口不同

why does express server listens to different port than my react app is on

我的 React 应用程序在默认的 http://localhost:3000/ 上运行(这意味着应用程序在我发现的端口 3000 上运行),但是当我想从客户端到服务器获取数据时,我有收听不同的端口。这是代码:

    const express = require("express");
    const server = express();
    
    const body_parser = require("body-parser");
    const port = 4000;
    
    
    server.listen(port, () => {
        console.log(`Server listening at ${port}`);

当服务器侦听端口 4000 或除 3000 以外的任何其他端口时,一切正常(我可以接收和发送数据)但是每当我开始侦听 3000 时我的代码就会抛出错误。我不明白这是如何工作的,我不应该听 3000 连接到我的反应应用程序吗?还是我缺少一些基础知识?

如果您 运行 分别安装每个应用程序,那么您必须 运行 每个应用程序在不同的端口上。 如果您从服务器提供前端应用程序,您只需要 运行 服务器并监听相同的端口。