连接到 Node 后端"/>
在 cPanel 托管上部署时如何将 React 前端连接到 Node 后端
我已经创建了一个 ReactJs 前端和 NodeJS 后端,它使用 http://localhost:8080 在端口 8080 上的 VS Code Live Server 上运行良好。现在我正在使用 Jupiter cPanel 为共享主机提供网站服务。在 public_html 上上传的前端构建版本工作正常,但与后端的连接尚未建立。我已将 Node.js 安装到托管,并且后端服务器正在“mydomain/backend”上运行。
这些是我的服务器代码:
const express = require('express');
const dotenv = require('dotenv');
const morgan = require('morgan');
const connectDB = require('./config/db');
const authRouter = require('./routes/authRouter');
const cookieParser = require('cookie-parser');
const cors = require('cors');
const categoryRouter = require('./routes/categoryRouter');
const productRouter = require('./routes/productRouter');
// const resourceRouter = require('./routes/resourceRouter');
const paymentRouter = require('./routes/paymentRouter');
const subCategoryRouter = require('./routes/subCategoryRouter');
const bodyParser = require('body-parser');
//configuring env
dotenv.config();//since env file is in root directory no need to add path of the file
//configure database
connectDB();//call to establish connection with database
const app = express();
const PORT = process.env.PORT;
//middlewares
app.use(bodyParser.json());
app.use(cors());
app.use(express.json({ limit: '50mb' }));
app.use(express.urlencoded({ limit: '50mb' }));
app.use(morgan('dev'));//used in development phase to check the api calls being made
app.listen(PORT);
app.use(cookieParser());
//all routes
app.use('/auth', authRouter);
app.use('/category', categoryRouter);
app.use('/subCategory', subCategoryRouter);
app.use('/product', productRouter);
// app.use('/resource', resourceRouter);
app.use('/payment', paymentRouter);
app.get('/', (req, res) => {
res.json("HELLO universe");
})
console.log(`listening on port ${PORT}`);
在前端调用API是这样的:
const res = await axios.post(`${process.env.REACT_APP_API}/auth/login`, { email, password });
前端的 .env 内部:
REACT_APP_API =
我的主要疑问是我应该在 server.js 文件中的端口值和前端后端 URL 中使用什么来在它们之间建立连接???
app.listen(PORT);
请帮忙,因为我在过去 4 天里找到了解决方案。
回答如下:更多推荐
在 cPanel 托管上部署时如何将 React 前端连接到 Node 后端
发布评论