Node.js_HTTP模块
HTTP服务器与客户端
http是node提供的模块,其中封装了一个高效的HTTP服务器和一个简易的HTTP客户端。http.server是一个基于事件的HTTP服务器,http.request则是一个HTTP客户端工具,用于向HTTP服务器发送请求。
HTTP服务器
http.server是http模块中的HTTP服务器对象。
var http = require('http');
http.createServer(function(req, res){
res.writeHead(200, {'Content-Type': 'text/html'});//响应代码和响应头
res.write('<h1>hello node </h1>');//响应体
res.end('<p>hello yehui </p>');//结束并发送
}).listen(3000);//启动服务器并监听3000端口
http.server事件
继承自EventEmitter,提供了request等事。var http = require('http'); var server = new http.Server();
server.on('request', function(req, res){
res.writeHeader(200, {'Content-Type': 'text/html'});//响应代码和响应头
res.write('<h1>hello node </h1>');//响应体
res.end('<p>hello yehui </p>');//结束并发送
});
server.listen(3000);//启动服务器并监听3000端口
http.ServerRequest
http.ServerRequest是HTTP请求的信息,是后端开发者最关注的内容。他一般由http.Server的request事件发送,作为第一个参数传递。
http.ServerRequest提供了3 个事件用于控制请求体的传输:data:表示接收到的数据;
end::结束请求体
close:结束请求。
获取GET请求内容
获取POST请求内容
http.ServerResponse
http.ServerResponse是返回给客户端的信息,决定用户最终看到的结果。他也是request是件发送的,作为第二个参数传递,一般简称res。他有三个重要的成员函数:.writeHead(状态码, ):想请求的客户端发送响应头;
.write(data, 编码形式):发送相应内容,data表示要发送的内容,在.end()之前。可以多次调用;
.end(data, encoding):结束响应。
HTTP客户端
http模块提供了两个客户端函数:request和get。
Node.js_HTTP模块的更多相关文章
- 深入浅出node(2) 模块机制
这部分主要总结深入浅出Node.js的第二章 一)CommonJs 1.1CommonJs模块定义 二)Node的模块实现 2.1模块分类 2.2 路径分析和文件定位 2.2.1 路径分析 2.2.2 ...
- Node.js模块
每一个Node.js都是一个Node.js模块,包括JavaScript文件(.js).JSON文本文件(.json)和二进制模块文件(.node). mymodul.js function Hell ...
- 如何发布一个自定义Node.js模块到NPM(详细步骤)
咱们闲话不多说,直接开始! 由于我从没有使用过MAC,所以我不保证本文中介绍的操作与MAC一致. 文章开始我先假定各位已经在window全局安装了Node.js,下面开始进行详细步骤介绍: 本文本着, ...
- 编写原生Node.js模块
导语:当Javascript的性能需要优化,或者需要增强Javascript能力的时候,就需要依赖native模块来实现了. 应用场景 日常工作中,我们经常需要将原生的Node.js模块做为依赖并在项 ...
- 编写原生的Node.js模块
导语:当Javascript的性能遭遇瓶颈,或者需要增强Javascript能力的时候,就需要依赖native模块来实现了. 应用场景 日常工作中,我们经常需要将原生的Node.js模块做为依赖并在项 ...
- Node.js 模块
稳定性: 5 - 锁定 Node 有简单的模块加载系统.在 Node 里,文件和模块是一一对应的.下面例子里,foo.js 加载同一个文件夹里的 circle.js 模块. foo.js 内容: va ...
- node基础—模块系统
模块的概念 为了让Node.js的文件可以相互调用,Node.js提供了一个简单的模块加载系统. 在 Node.js 中,文件和模块是一一对应的(每个文件被视为一个独立的模块),换言之,一个 Node ...
- node常用模块---path
path---用来提供文件路径和文件之间的处理的函数 node常用模块之path
- node 各模块及对应功能
node 各模块及对应功能 node 模块 对应功能 net 处理 TCP dgram 处理 UDP http 处理 HTTP/1 http2 处理 HTTP/2 https 处理 HTTPS tls ...
随机推荐
- MySQL中InnoDB脏页刷新机制Checkpoint
我们知道InnoDB采用Write Ahead Log策略来防止宕机数据丢失,即事务提交时,先写重做日志,再修改内存数据页,这样就产生了脏页.既然有重做日志保证数据持久性,查询时也可以直接从缓冲池页中 ...
- Json模块的详细介绍(序列化)
什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给? 现在我们能想到的方法就是存在文件里,然 ...
- nodejs get请求
const http = require('http'); http.get('http://192.168.1.6:8080/getDemo?msg=12', (res) => { const ...
- Wicket:一种构建和测试动态 Web 页面的简化框架
https://www.ibm.com/developerworks/cn/web/wa-aj-wicket/
- Ajax知识
一.Ajax介绍前戏 1.json介绍 1.什么是json? json(JavaScript Object Notation,JS对象标记) 是一种轻量级的数据交换格式.它基于 ECMAScript ...
- Java FAQ -- "Exception in thread 'main' java.lang.UnsupportedClassVersionError:"
OS:Ubuntu 最近重新学习Java,写了一段很小的程序,如下: public class Hello{ public static void main(String args[]){ Syste ...
- MySQL数据库(2)_MySQL数据库和数据库表操作语句
一.关于数据库操作的sql语句 -- .创建数据库(在磁盘上创建一个对应的文件夹) create database [if not exists] db_name [character set xxx ...
- iOS 给 ViewController 减负 之 UITableView
今天看了一些博客文章分享了如何给ViewController 瘦身的问题, 其中一个就是tableView. 的确,随着产品迭代,VC里面可能越来越臃肿,有时候真的需要好好进行一次瘦身.可能是参考的博 ...
- jQuery中的部分方法
1.empty() – jQuery 文档操作 从被选元素移除所有内容,包括所有文本和子节点. 用法:$(selector).empty(); 其中,selector可以是"#id" ...
- $《第一行代码:Android》读书笔记——第1章 Android系统
(一)Android系统架构 1.Linux内核层:各种底层驱动,如显示驱动.音频驱动.电源管理等. 2.系统运行库层:各种库支持,如3D绘图.浏览器内核.数据库等. 3.应用框架层:各种API,各种 ...