Fork me on GitHub

nodejs服务端实现post请求

博客之前写过一篇php实现post请求的文章。

今天想到好久没有输出了,重新认识到输出的重要性。百般思索该写些什么?想来想去,想到了两点:

逐步熟练nodejs各种场景知识,针对mysql数据交互和fs文件数据交互练习。

本文属于nodejs各种场景知识。

首先,nodejs实现post,可以直接使用request这个包,直接在文件下执行

cnpm install request --save -dev

然后在文件里面很容易实现post请求。

var request = require('request');

request.post({url:'http://www.youxuewang.com.cn/shouji/home/LoadProducts', form:{
    "pageno": 1,
    "pagesize": 200,
    "condstr": "社会大课堂: 0"
}}, function(error, response, body) {
    console.log(error,response,body)
})

另外不利用第三方包,利用原生的node

var http = require('http');  
  
var querystring = require('querystring');  
  
var post_data = {  
    "pageno": 1,
    "pagesize": 200,
    "condstr": "社会大课堂: 0"
};//这是需要提交的数据  
  
  
var content = querystring.stringify(post_data);  
  
var options = {  
    hostname: 'youxuewang.com.cn',  
    port: 80,  //注意端口号 可以忽略不写 写一定写对
    path: '/shouji/home/LoadProducts',  
    method: 'POST',  
    headers: {  
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'  
    }  
};  
  
var req = http.request(options, function (res) {  
    res.setEncoding('utf8');  
    res.on('data', function (chunk) {  
        console.log('BODY: ' + chunk);  
    //JSON.parse(chunk)
    });  
});  
  
req.on('error', function (e) {  
    console.log('problem with request: ' + e.message);  
});  
  
// write data to request body  
req.write(content);  
  
req.end();  

注意如果写端口一定要写对,不写端口也可以。

然后node js文件即可。至于get请求,自己研究吧。

 

posted @ 2019-06-18 20:16  我站在山顶上  阅读(15403)  评论(0编辑  收藏  举报