nodejs 使用http进行post或get请求的实例(携带cookie)
作者:--天行健地势坤--
今天小编就为大家分享一篇nodejs 使用http进行post或get请求的实例(携带cookie),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
安装http
nmp install http
函数封装(可直接拿去进行使用)
var http = require('http');
function nodePostGetRequest(HOST, PORT, method, bodydata, callBackFunction, path, cookie) {
  //把将要发送的body转换为json格式 
 var body = bodydata;
 var bodyString = JSON.stringify(body);
  //http 头部
 var headers = {
'Content-Type': 'application/json',
'Content-Length': bodyString.length,
'Cookie': cookie
 };
//用与发送的参数类型
var options = {
host: HOST,  //ip
port: PORT,   //port
path: path,   //get方式使用的地址
method: method, //get方式或post方式
headers: headers
  };
  var req = http.request(options, function(res) {
res.setEncoding('utf-8');
var responseString = '';
res.on('data', function(data) {
  responseString += data;
});
res.on('end', function() {
  //这里接收的参数是字符串形式,需要格式化成json格式使用
  var resultObject = JSON.parse(responseString);
  console.log('-----resBody-----', resultObject);
  callBackFunction(responseString);
});
req.on('error', function(e) {
  // TODO: handle error.
  console.log('-----error-------', e);
});
 });
 req.write(bodyString);
req.end();
}
nodePostGetRequest函数解析(使用方法)
HOST:ip地址 PORT:端口号 method:请求方式(get或post) bodydata:进去时发送的内容(当为get请求时可以传null。) callBackFunction:回调函数(请求发送后进行数据接收。需要自己实现对数据的处理) path:请求路径(post请求可以为空。get不可为空) cookie:需要携带的cookie
使用案例
  var datapost = {
  "BODY": {
    "Header": {
    },
    "Body": {
    }
  }
};
nodePostGetRequest(HOST, PORT, "POST", datapost, detalCall, '', mycookie);
或
 var path = "";
nodePostGetRequest(HOST, PORT, "GET", "", dealCallback, path, mycookie);
以上这篇nodejs 使用http进行post或get请求的实例(携带cookie)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
