Настройка прокси-сервера для создания приложения react

я запустил приложение react с помощью create-react-app и управлял npm run eject скрипт для получения доступа ко всем файлам. После этого я установил express и создал server.js файл, который находится на том же уровне, что и

это server.js файл содержимое:

const express = require('express');
const app = express;

app.set('port', 3031);

if(process.env.NODE_ENV === 'production') {
  app.use(express.static('build'));
}

app.listen(app.get('port'), () => {
  console.log(`Server started at: http://localhost:${app.get('port')}/`);
})

ничего сумасшедшего здесь, просто настройка для будущих прокси api, где мне нужно использовать секреты и как я не хочу выставлять свой api.

после этого я добавил "proxy": "http://localhost:3001/" мой . Теперь я застрял, так как мне нужно выяснить, как правильно запустить мой сервер и использовать это server.js файл в режиме разработки и затем в производстве.

в идеале было бы хорошо, если бы мы могли использовать более одного прокси-сервера, т. е. /api и /api2

1 ответов


вам не нужно было извлекать, чтобы запустить сервер.js. Вы можете просто запустить его с node server.js вместе с create-react-app.

вы все еще можете сделать npm start даже после извлечения, чтобы запустить сервер dev.

для выполнения /api1 и /api2, вы просто должны справиться с этим в вашем server.js файл, и он должен работать нормально. Вы должны соответствовать port в своем server.js и proxy настройки внутри package.json - в этом случае это должно быть "proxy": "http://localhost:3031"