首先附上程式碼中一段↓,由於整體太長我並沒有全貼,只有貼主要我需要跑的一段。
bot.on('message', function(event) {
   var myReply='';
   if (event.message.text === '查詢') { 
		var sql = require("mssql");
		// config for your database
		var config = {
			user:'sa',
			password:'我的密碼',
			server:'127.0.0.1',
			port:'1433',
			dialect:'mssql',
			database:'test1',
			options: {
				 truestedConnection: true,
				 instanceName:'MSSQLSERVER'
			}
		};
		// connect to your database
		sql.connect(config, function (err) {
			if (err) console.log(err);
			// create Request object
			var request = new sql.Request();
			// query to the database and get the records
			request.query('select * from student', function (err, recordset) {	
				if (err) console.log(err)
				// send records as a response
				console.log(recordset);
				sql.close()
			});
		});
   }
  if (event.message.type === 'sticker') {
      myReply='你很幽默噢!!';
   }
   if (event.message.type === 'image') {
      myReply='這照片好帥!';
   }
   event.reply(myReply).then(function(data) {
      // success 
      console.log('訊息已傳送!');
   }).catch(function(error) {
      // error 
      console.log('error');
   });
});
希望是我在Line上打"查詢",後臺就可以到資料庫(Student)抓我需要的資訊並回覆出來。
然後是push到heroku後得到的回應↓。
{ ConnectionError: Failed to connect to 127.0.0.1\MSSQLSERVER in 15000ms
...(中間省略)
2018-12-11T08:08:17.162161+00:00 app[web.1]:     at process._tickCallback (internal/process/next_tick.js:68:7) code: 'ECONNCLOSED', name: 'ConnectionError' }
2018-12-11T08:08:17.162306+00:00 app[web.1]: undefined
我有使用過sql client去做外部連接,是沒有問題的(確定可以連上)
然後單獨的把var sql = require("mssql"); 到 sql.close() 這一段抓出來用CMD執行結果如下:
MSSQL裡頭的TCP/IP(Port:1433)以及SQL Server Browser都開了。
請求協助,我不知道還有哪邊沒調整到或是程式碼哪邊有問題。
拜託了,謝謝!