如何在Tomcat服务器中将前端React js和后端节点js部署为单个war文件? -React JS

时间:2020-05-26 16:12:07

标签: mysql node.js reactjs tomcat

我在React.js中拥有应用程序的前端,而在连接到MySQL数据库的node.js中具有后端。

现在,我可以使用命令mvn包将react前端转换为单个war文件,并在apache tomcat服务器中进行部署,但是后端节点js在tomcat服务器中不可访问,因为后端不在war文件中。

那么我如何将前端和后端组合到单个war文件中以部署在Tomcat的Apache服务器中?

我正在使用React.js,node js,express js,MySql

这是React应用程序使用axios从后端获取并连接到MySql的前端部分。

....
....
export const registerUser=(userData)=>async(dispatch)=>{
    console.log(userData);
    await mysqlDB.post('/registered_user/new',userData)
    .then((response)=>{
        dispatch({type:ActionTypes.USER_REGISTER_SUCCESS,payload:response.data});
        History.push('/');
    })
    .catch((error)=>dispatch({type:ActionTypes.USER_REGISTER_FAILED}))
}

....
....

这是我连接到Mysql的node.js中的后端


const express = require('express');
const cors = require('cors');
const app = express();
var bodyParser = require('body-parser')


var mysql= require('mysql');
var connection = mysql.createConnection({
  host     : 'localhost',
  user     : 'rittesh_react',
  password : 'root',
  database : 'chess4loudoun',
  timezone : '+00:00'
});

connection.connect(function(err) {
    if (err) {
      res=err.stack;
      console.error('error connecting: ' + err.stack);
    }
  else{
    res=connection.threadId;
    console.log('connected as id ' + connection.threadId);
  } 
});

app.use(cors());
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extended: true }));


app.post('/registered_user/new',(request,response)=>{
    const {uscf_id,first_name,middle_name,last_name,
        email_id,password,address,city,state,postal_code,country,phone_code,phone_number,
        sms_campaign,email_campaign}=request.body;
        console.log(uscf_id);
    connection.query("INSERT INTO registered_user VALUES ( '"+uscf_id+"','"+first_name+"','"+middle_name+"','"+last_name
    +"','"+email_id+"','"+password+"','"+address+"','"+city
    +"','"+state+"','"+postal_code+"','"+country+"','"+phone_code
    +"','"+phone_number+"','"+sms_campaign+"','"+email_campaign+"')",function (error,result,fields){
        if(error){
            throw error;
        }else{
            response.send(JSON.stringify(result))
        }
    });
});

....
....

如果我做错了什么,或者有更好的方法让我知道,请

0 个答案:

没有答案
相关问题