2015-01-12 69 views
0

這是我寫的代碼。如何在節點中發送參數以及POST http請求?

var querystring = require('querystring'); 

var http = require('http'); 
var body = querystring.stringify({ 
     B1: 'Submit', 
     RollNumber: 12569 

}); 

var request = http.request({ 
    host: '14.139.56.15', 
    port: 443, 
    path: '/scheme12/studentresult/details.asp', 
    method: 'POST', 
    headers: { 
     'Content-Type': 'application/x-www-form-urlencoded', 
     'Content-Length': Buffer.byteLength(body) 
     } 

    }, function(res,err) { 
      if(err){ 
       console.log(err); 
      } 
      console.log('Getting response..'); 
      var resp = ''; 
      res.on('data', function(data) { 
       resp += data; 
      }); 
      res.on('end', function() { 
       console.log(resp); 


      }); 
      res.on('error', function(err) { 
       winston.error(err); 
      }); 


    request.write(body); 
    request.end(); 
}); 

這是給我這個錯誤

Error: read ECONNRESET

我這樣做的第一次,不知道我是否做這個正確與否。您可以訪問鏈接並檢查出來。我需要從此表格中獲取數據

回答

2

您試圖向偵聽HTTPS端口(443)的站點提交HTTP請求。將var http = require('http');更改爲var http = require('https');(如果您願意,可以匹配變量名稱)。

+0

只需添加,他也應該將其寫入/結束方法移出回調。 –

+0

感謝您的回答。我做了你所說的。現在出現這個錯誤 - 「UNABLE_TO_VERIFY_LEAF_SIGNATURE」。 –

+0

@ BenFortune謝謝。我將它從回調中移出。 –