如何在节点中发送参数和POST http请求?

时间:2015-01-12 16:31:45

标签: node.js

这是我写的代码。

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

我是第一次这样做,不知道我是否正确行事。您可以访问该链接并查看它。我需要从这个表单中获取数据

1 个答案:

答案 0 :(得分:2)

您尝试向侦听HTTPS端口的网站提交HTTP请求(443)。将var http = require('http');更改为var http = require('https');(如果您愿意,可以将变量名称更改为匹配)。