NodeJS request.post方法问题

时间:2016-08-05 03:30:38

标签: node.js post request

  

解决:孟买大学似乎使用不同的服务器   不同的结果,我注意到了。

我正在编写一个脚本来直接从我的大学网站上检索我的结果。但我在NodeJS的“请求”模块中遇到“request.post”方法的问题。

这是我的代码

var cheerio = require('cheerio');
var request = require('request');
request.post({
    headers: {'content-type' : 'application/x-www-form-urlencoded', 'content-length':69},
    url:     'http://results.mu.ac.in/get_resultc.php',
    body:    "exam_id=4050&exam_year=2016&exam_month=MAY&seat_no=45280208&submit=Go"
    }, function(error, response, body){
        var $ = cheerio.load(body);
        console.log($('html').text());
        var result = $('b').text();
        console.log(result);
}); 

我得到以下输出

.. 
..
No Such Seat No!!

但如果我用Burp发送相同的帖子数据,我会得到正确的输出,如下图所示。

Link to image

请让我知道我哪里出错了,可以做些什么。谢谢。

  

注意:显示的查询是测试查询,与我的考试ID无关   或座位号。

1 个答案:

答案 0 :(得分:0)

上面代码中的网址指向:

url:     'http://results.mu.ac.in/get_resultc.php',

但是图片指向:

url:     'http://results.mu.ac.in/get_resultb.php',

“get_result的 B'/强> .PHP”

发布到get_resultb.php yeilds:

Results for B.E.Degree (COMPUTER ENGG.) (SEM-VIII) (CBSGS) held on MAY 2016

The result of seat number 45280208 is PassedCongratulations.