aws mssql хорошо работает на js сервере localhost, но не на сервере heroku - PullRequest
0 голосов
/ 13 декабря 2018

Очень хорошо работает на локальном хосте: 13145 / settingTemp? Temp = 34 & hum = 45 и очень хорошо вставляет дб.

также, я протестировал SSMS и создал таблицу, очень хорошо вставляю запрос на информацию о сервере и порте, которые я использовал в приведенном ниже коде.

но после того, как я загрузил код на свой сервер heroku, он не будет работать.Журнал heroku сообщает

ConnectionError: Не удалось подключиться к файлу sample-instance.cdm2vlbnrdxu.us-east-2.rds.amazonaws.com:1433 за 15000 мс 2018-12-13T09: 11: 16.192106 + 00: 00 приложение[web.1]: в ConnectionError (/app/node_modules/tedious/lib/errors.js:12:12) 2018-12-13T09: 11: 16.192108 + 00: 00 приложение [web.1]: в Connection.connectTimeout(/app/node_modules/tedious/lib/connection.js:944:28) 2018-12-13T09: 11: 16.192109 + 00: 00 app [web.1]: в Timeout._onTimeout (/ app / node_modules / tedious /lib / connection.js: 913: 16) 2018-12-13T09: 11: 16.192111 + 00: 00 app [web.1]: в ontimeout (timers.js: 469: 11) 2018-12-13T09: 11: 16.192112Приложение +00: 00 [web.1]: в tryOnTimeout (timers.js: 304: 5) 2018-12-13T09: 11: 16.192114 Приложение + 00: 00 [web.1]: в Timer.listOnTimeout (timers.js): 264: 5) 2018-12-13T09: 11: 16.192116 + 00: 00 app [web.1]: message: 'Не удалось подключиться к sample-instance.cdm2vlbnrdxu.us-east-2.rds.amazonaws.com:1433 в 15000ms ', 2018-12-13T09: 11: 16.192118 + 00: 00 app [web.1]: код:' ETIMEOUT '}, 2018-12-13T09: 11: 16.192119 + 00: 00 app [web.1]:имя: 'ConnectionError'}

Я не понимаю, почему он имеет ошибку на сервере heroku ...

var sql = require ('mssql');

var strSql = "";

//
var connectionConfig = {
    user: 'kotran',                 //
    password: 'xxxxxxx' ,           //
    server: 'sample-instance.cdm2vlbnrdxu.us-east-2.rds.amazonaws.com',     //서버주소
    port:'1433',                    //
    options: {
        database: 'HRDB2',          //  
        connectTimeout  : 15000,
        requestTimeout  : 15000,
        useUTC          : true
    }
};

ниже код моего роутера.

  app.get("/settingtemp",function(req,res){
  var d = new Date();
  d.setHours(d.getHours()+9);
  var year=d.getFullYear();
  var month = d.getMonth();
var dates = d.getDate();
var hour = d.getHours();
var minute = d.getMinutes();
if(year==""){


  console.log("hou is : "+hour+"///"+hour.length);
  if(hour.length==1){
    hour="0"+hour;
  }
  console.log("hour new : "+hour);
  var newdate="2018-"+(month+1)+"-"+dates+" "+hour+":"+minute;
}else{

  console.log("hsssssou is : "+hour+"///"+hour.toString().length);
  if(hour.toString().length==1){
    hour="0"+hour;
  }
  console.log("hour new : "+hour);
  var newdate=year+"-"+(month+1)+"-"+dates+" "+hour+":"+minute;
}
  var bat=req.query.bat;
  var temp=req.query.temp;
  var hum=req.query.hum;
  if(bat==0||bat==undefined){

    var message = {"temp":temp,"hum":hum,"time":newdate};
  }else{

    var message = {"temp":temp,"hum":hum,"bat":bat,"time":newdate};
  }
  var toupdate = {"currentTemp":temp,"currentHum":hum,"updatedTime":newdate};
  var connection = new sql.ConnectionPool(connectionConfig, function(err) {
    if (err) return console.error('error is', err)

    // or: var request = connection.request();
    var request = new sql.Request(connection);

    var data = "aaaa";

    /**
; */
console.log("temp is : "+temp);
console.log(hum);
console.log(newdate);
//convert(varchar(16), getdate(), 120)
    strSql = "insert into HRDB2.dbo.newTempp values("+temp+","+hum+",convert(DATETIME, '"+newdate+"',120))";
    // strSql = strSql + " values ('msg_from_server2','010-9619-8289','"+data+"',getdate())";

    request.query(strSql, function(err, recordset) {
      if (err) return console.error('error query is', err)              
      //console.log('result query is', recordset);
    });
  });
  res.type('text/plain');
  var json={"bat":23};

  res.send(json);
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...