Express服务器无法将数据推送到AWS RDS?

问题描述 投票:0回答:1

希望大家对这个问题有一定的经验,并指出我可能会遗漏的显而易见的东西。我有一个Express服务器和一个PostgreSQL数据库,它们都在本地运行并连接到react native应用程序。我已成功将Amazon RDS实例连接到我的Postgres数据库。例如,当我的快递服务器运行时:

const User = sequelize.define('User', {
    email: {type: Sequelize.STRING, allowNull: false},
    password: {type: Sequelize.STRING, allowNull: false},
    user_id: {type: Sequelize.INTEGER, allowNull: true}
  }, {
      tableName: "UserTable"
  });

User.sync({force: false}).then(() => {
    console.log('Table already exists!')
  });

在Postgres数据库中创建了一个新表,该表也已与RDS实例同步。但是,在react native应用程序中调用此函数时,它将引发超时错误:

postData = () => {
    var url = 'http://123.456.7.891:3210/data'
    axios.post(url, {
      email: this.state.email,
      password: this.state.password
    })
    .then(function (response) {
      console.log(response);
    })
    .catch(function (error) {
        console.log("Api post error");
        alert(error.message);
        console.log(error);
    });
  };

这是它正在调用的明确端点,在我连接到Amazon RDS并只是在本地运行整个过程之前,一切都工作正常。

app.post('/data', function(req,res){
User.create({
    email: req.body.email,
    password: req.body.password,
    user_id: 000,
}).then(data => {
  console.log('Data entered!');
  res.send({
        status: 'Data successfully sent through api!',
        email: req.body.email,
        password: req.body.password
  })
}).catch(function(error) {
    console.log('There has been a problem with your post operation: ' + error.message);
      throw error;
    });
})

我怀疑我的错误出在可变URL中,并且由于现在它已连接到AWS RDS实例,因此我不应该将其发送回本地主机。但是,这对我来说并没有什么意义,因为快递服务器仍然应该在本地主机端口3210上侦听。任何帮助将不胜感激。

node.js postgresql react-native express amazon-rds
1个回答
0
投票

因此,无论出于何种原因,双引号都解决了我的问题。如果遇到此问题,请记住将var url =“ https://123.456.789:3210/data”;而不只是单引号!希望这对任何陷入困境的人有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.