# #reactjs #express #google-cloud-platform #proxy #create-react-app
Вопрос:
Я новичок в полной укладке, и у меня есть приложение Create React, которое попадает в одну конечную точку /api/verify в экспресс-бэкэнде.
В dev я прокси-сервер в своем интерфейсном пакете.json с "proxy": "localhost:8081"
DevOps необходимо развернуть это в GCP nginx env, и мне нужно сделать путь прокси-сервера относительным, чтобы нам не приходилось жестко кодировать домен в прокси-сервере.
У меня есть создание .env.development
и .env.production
, но я не уверен, как их правильно использовать, поэтому локальные yarn start
прокси localhost:8081
и производственная сборка прокси-серверов являются реальным доменом.
У меня есть типичный, простой экспресс server.js но не знаю, как связать все это воедино.
const cors = require('cors');
const express = require('express');
const bodyParser = require('body-parser');
require('dotenv').config();
const app = express();
var corsOptions = {
origin: 'http://localhost:8081',
};
app.use(cors(corsOptions));
app.use(express.json());
app.use(bodyParser.json());
app.disable('x-powered-by');
// parse requests of content-type - application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: true }));
// simple route
app.get('/', (req, res) => {
res.json({ message: 'Welcome to bezkoder application.' });
});
require('./routes/gallery.routes')(app);
const PORT = process.env.PORT || 8081;
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}.`);
});
И мой единственный маршрут:
const { authJwt } = require('../middleware');
const galleryController = require('../controllers/gallery.controller.js');
module.exports = function (app) {
app.use(function (req, res, next) {
res.header(
'Access-Control-Allow-Headers',
'x-access-token, Origin, Content-Type, Accept',
);
next();
});
app.get(
'/api/verify',
[authJwt.verifyToken],
galleryController.fanPassGallery,
);
};