0

我正在运行一个使用 express 作为后端的反应应用程序。我按照本教程介绍了如何连接两者然后部署到heroku。简而言之,我按照说明在端口 5000 上运行 express,并在客户端的包 json 代理到端口 5000。从服务器端我运行一个名为并发的 npm 工具,它同时运行。

现在的问题是 npm run build 似乎只工作了一半。页面在端口 5000 上加载一瞬间(在运行构建之前,我将使用端口 3000)消失,只留下我的自定义背景颜色。我看不到服务器端或反应应用程序端的错误。

我尝试更改服务器的端口号,首先认为这是serve -s build在端口 5000 上运行应用程序的问题,这可能会发生冲突,但同样的问题仍然存在。

请让我知道什么代码如果我可以显示任何代码来帮助诊断,因为恐怕我不知道除了我的文件布局之外要呈现什么(请参阅教程的链接我有相同的整体布局),下面将是我的包 jsons分别是客户端和服务器。

客户端包.json:

  "name": "friftr_version_2_0",
  "version": "2.0.0",
  "description": "Friftr, but its in react",
  "main": "index.js",
  "author": "V1llage_ID10T",
  "license": "ISC",
  "dependencies": {
    "@material-ui/core": "^4.9.8",
    "@material-ui/icons": "^4.9.1",
    "axios": "^0.19.2",
    "react": "^16.13.1",
    "react-dom": "^16.13.1",
    "react-lazy-load-image-component": "^1.4.1",
    "react-router-dom": "^5.1.2",
    "react-router-page-transition": "^3.1.0",
    "react-scripts": "^3.4.1",
    "typescript": "^3.8.3"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  },
  "proxy": "http://localhost:3001",
  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ]
}

服务器包.json

{
  "name": "friftr2",
  "version": "2.0.0",
  "description": "friftr redesign in express, react, material-ui, mongoose database. ",
  "main": "server.js",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/n/a.git"
  },
  "author": "V1LLAGE_ID10T",
  "license": "ISC",
  "bugs": {
    "url": "https://github.com/n/a/issues"
  },
  "homepage": "https://github.com/n/a#readme",
  "dependencies": {
    "axios": "^0.19.2",
    "body-parser": "^1.19.0",
    "cheerio": "^1.0.0-rc.3",
    "concurrently": "^5.1.0",
    "connect-mongo": "^3.2.0",
    "cors": "^2.8.5",
    "dotenv": "^8.2.0",
    "express": "^4.17.1",
    "express-session": "^1.17.0",
    "got": "^10.6.0",
    "hsts": "^2.2.0",
    "http-proxy-middleware": "^1.0.1",
    "mongo-sanitize": "^1.1.0",
    "mongoose": "^5.9.3",
    "mongoose-findorcreate": "^3.0.0",
    "node-fetch": "^2.6.0",
    "nodemon": "^2.0.2",
    "passport": "^0.4.1",
    "passport-google-oauth20": "^2.0.0",
    "passport-local-mongoose": "^6.0.1",
    "tall": "^3.0.0"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "client-install": "cd client && npm install",
    "start": "node server.js",
    "server": "nodemon server.js",
    "client": "npm start --prefix client",
    "dev": "concurrently \"npm run server\" \"npm run client\""
  }
}
4

1 回答 1

0

所以我的不和谐伙伴的共识告诉我永远不要做我刚刚做的事情,而是同时卸载,让我所有的获取请求都连接到地址和端口,而不是根目录。

所以我对 react 的获取请求将来自 /api/query/n/n/new/all/0tohttp://localhost:5000/api/query/n/n/new/all/0或我工作的任何端口。

于 2020-04-05T18:13:59.233 回答