node.js http客户端
一、http模块提供了两个函数http.request和http.get,功能是作为客户端向HTTP服务器发起请求。
1.http.request(options,callback)发起HTTP请求,接受两个参数,option是一个类似关联数组的对象,表示请求的参数,callback是请求的回调函数,option常用的参数如下
var http=require('http');
var querystring=require('querystring');
//启动服务
http.createServer(function(req,res){console.log('请求到来,解析参数');//解析post请求var post='';req.on('data',function(chunk){post+=chunk;});req.on('end',function(){post=querystring.parse(post);//解析完成console.log('参数解析完成,返回name参数');res.end(post.name);});
}).listen(3000);//客户端请求
var contents=querystring.stringify({name:'marico',age:21,address:'beijing'
});
//Ext.encode();
//声明请求参数
var options={host:'localhost',path:'/',port:3000,method:'POST',headers:{'Content-Type':'application/x-www-form-urlencoded','Content-Length':contents.length}
};
//发送请求
var req=http.request(options,function(res){res.setEncoding('utf-8');res.on('data',function(data){console.log('后台返回数据');console.log(data);})
});
req.write(contents);
//必须调用end()
req.end();
2.http.get(options,callback) http模块还提供了一个更加简便的方法用于处理GET请求:http.get。它是http.request的简化版,唯一的区别在于http.get自动将请求方法设为GET请求,同时不需要手动调用req.end();
var http=require('http');
var url=require('url');
var util=require('util');
//启动服务
http.createServer(function(req,res){console.log('请求到来,解析参数');var params=url.parse(req.url,true);console.log('解析完成');console.log(util.inspect(params));console.log('向客户端返回');res.end(params.query.name);
}).listen(3000);//客户端请求
var request=http.get({host:'localhost',path:'/user?name=marico&age=21',port:3000},function(res){res.setEncoding('utf-8');res.on('data',function(data){console.log(' 服务端相应回来的数据为:'+data);})
});
二、http.ClientRequest
三、http.ClientResponse
node.js http客户端相关推荐
- node.js api接口_如何在Node.js API客户端中正常处理故障
node.js api接口 by Roger Jin 罗杰·金(Roger Jin) 如何在Node.js API客户端中正常处理故障 (How to gracefully handle failur ...
- Apache Ignite的Node.js客户端使用入门
为什么80%的码农都做不了架构师?>>> 介绍 Ignite原生提供了若干种主要编程语言的支持,最近,还通过瘦客户端技术对其它的编程语言提供了支持,其中在2.7版本中新增加的瘦 ...
- 在既有系统中打通Apache Ignite、MySQL和Node.js
为什么80%的码农都做不了架构师?>>> 介绍 在本系列的第一篇文章中,安装了Node.js.Ignite的Node.js瘦客户端包,并且测试了一个示例应用.在本文中,可以看一 ...
- 2021 年最值得使用的 Node.js 框架
大家好,我是若川.今天推荐一篇译文:2021年最值得使用nodejs框架,值得收藏,很快能看完. 点击下方卡片关注我.加个星标. 学习源码整体架构系列.年度总结.JS基础系列 Node.js 是最敏捷 ...
- node.js 史上最详细 (博主持续更新)
1. node.js介绍 诞生于2009年,它不是一门语言也不是一门框架,它是基于Google V8引擎的JavaScript运行时环境,同时结合Libuv拓展了JavaScript功能,使之支持IO ...
- Node.js基础笔记
Node.js基础笔记 1. NodeJS入门基础 1.1 NodeJS 介绍 1.1.1 NodeJS 是什么 1.1.2 NodeJS 的优势 1.1.3 NodeJS 的技术特性 1.1.4 N ...
- Node.js的Web后端开发调研
1. nodejs写后端优缺点(讲解nodejs与js区别) 1.1 Node.js是什么 Node.js 是一个开源与跨平台的 JavaScript 运行时环境 在浏览器外运行 V8 JavaScr ...
- 常用Node.js 框架一览
原文地址:Top Node.js Frameworks to use in 2021 原文作者:Ronak Patel 译文出自:掘金翻译计划 本文永久链接:https://github.com/xi ...
- js ftpclient linux server,Node.JS用Socket实现FTP Server服务器和Client客户端
通信过程 FTP协议其实就是主机和服务通过Socket进行固定格式的通信过程,当某客户端连接到FTP 服务器后,客户端发送指令: [参数] 服务会按以下格式返回: [参数或说明] 例如以下是FileZ ...
最新文章
- 构造函数没有返回值是怎么赋值的?
- java ado连接mysql_【转】Java JDBC对应C# ADO连接数据库之区别
- mapreduce工作流程_详解MapReduce中的五大编程模型
- layui table 滚动 键盘
- 龙格库塔法解微分方程组的matlab程序,MATLAB实例源码教程:龙格库塔法求解微分方程组源代码实例.doc...
- mysql 速度检索
- SpringBoot配置Druid
- mysql的告警日志_MySQL Aborted connection告警日志的分析
- app后端设计(php)
- xml.query() 实例演示
- emlog-FLY主题模板1.4版本免费完全开源
- 各种图片格式的生成工具(HTML、URL、BBCode、Markdown、Link)
- 基于LabVIEW的个性化打地鼠游戏设计
- JS中this是什么
- “道可道,非常道”——千年孤独话老子
- Windows 8.1核心版通过注册表启用Guest账号的局域网共享
- Java提供的网络支持
- javase(13)_网络编程
- MATLAB中物体夹角的检测
- 系列网络服务器机柜,什么是网络机柜 网络机柜和服务器机柜有哪些区别【详解】...
热门文章
- React Native使用指南-在设备上运行
- 现代软件工程系列 创新靠学分
- vue接收json数据_Vue之使用ajax获取json数据,并用v-for循环显示在表格中
- 白中英 计算机组成原理_计算机组成原理 第五版.立体化教材 白中英 大学教材...
- 从windows计算机中卸载office,如何彻底卸载电脑中的Office组件|Office办公软件卸载不干净怎么办...
- python做一个窗口样式_python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法...
- html中什么是语义,html – “语义正确”是什么意思?
- raft算法_Raft算法与实现
- pythonweb全栈开发_Web全栈开发穿插路程(python+js)
- java8 时间加一秒_Java8中对时间的处理