[TOC] <br/><br/><br/> # <b style="color:#4F4F4F;">简介说明</b> 原文链接: - [http](https://github.com/nodejs/node/blob/main/doc/api/http.md) ``` 版本:http 作用:http协议控制模块 ``` <br/> # <b style="color:#4F4F4F;">http</b> <br/> # <span style="color:#619BE4">*METHODS</span> ***** 解析器支持的 HTTP 方法列表。 <br/> # <span style="color:#619BE4">*STATUS_CODES</span> ***** 所有标准 HTTP 响应状态码的集合,以及每个状态码的简短描述 <br/> # <span style="color:#619BE4">*globalAgent</span> ***** Agent 的全局实例,作为所有 HTTP 客户端请求的默认值。 <br/> # <span style="color:#619BE4">*maxHeaderSize</span> ***** 只读属性,指定 HTTP 消息头的最大允许大小(以字节为单位)。 默认为 8KB。 。 <br/> # <span style="color:#619BE4">*createServer()</span> ***** 创建服务器,不同Worker共享相同Server <br/> ### 返回类型 ``` http.Server ``` <br/> ### 参数说明 <b style="color:#808080;">options :</b> * 类型:对象 * 默认值:无 * 描述: 拓展原有方法 * 可选值:[ ] <b style="color:#808080;">fn:</b> * 类型:回调函数 * 默认值:无 * 描述: 返回对象IncomingMessage和ServerResponse * 可选值:[ ] <br/> ### 示例内容 <span style="color:red;">1. 举例说明</span> ``` const http = require('http'); const server = http.createServer((req, res) => { res.end(); }); server.listen(8000); ``` <br/> # <span style="color:#619BE4">*get()</span> ***** 创建GET请求,用于请求远程主机 <br/> ### 返回类型 ``` http.ClientRequest ``` <br/> ### 参数说明 <b style="color:#808080;">url :</b> * 类型:字符串 * 默认值:无 * 描述: 请求地址 * 可选值:[ ] <b style="color:#808080;">options :</b> * 类型:对象 * 默认值:无 * 描述: 配置参数 * 可选值:[ ] <b style="color:#808080;">callback :</b> * 类型:回调函数 * 默认值:无 * 描述: 当请求返回时回调的函数,传递参数http.IncomingMessage对象 * 可选值:[ ] <br/> ### 示例内容 <span style="color:red;">1. 举例说明</span> ``` http.get("http://www.baidu.com", (res) => res.pipe(process.stdout)); ``` <br/> # <span style="color:#619BE4">*request()</span> ***** Node.js 为每个服务器维护多个连接以发出 HTTP 请求。 此函数允许显式地发出请求 <br/> ### 返回类型 ``` http.ClientRequest ``` <br/> ### 参数说明 <b style="color:#808080;">url :</b> * 类型:字符串 * 默认值:无 * 描述: 请求地址 * 可选值:[ ] <b style="color:#808080;">options :</b> * 类型:对象 * 默认值:无 * 描述: 配置参数 * 可选值:[ ] <b style="color:#808080;">callback :</b> * 类型:回调函数 * 默认值:无 * 描述: 当请求返回时回调的函数,传递参数http.IncomingMessage对象 * 可选值:[ ] <br/> # <b style="color:#4F4F4F;">http.ClientRequest</b> <br/> # <span style="color:#619BE4">aborted</span> ***** 判断请求是否已经终止 <br/> # <span style="color:#619BE4">destroyed</span> ***** 连接是否被销毁 <br/> # <span style="color:#619BE4">end()</span> ***** 完成发送请求。 如果部分请求主体还未发送,则将它们刷新到流中。 如果请求被分块,则发送终止符 '0\r\n\r\n' <br/> # <span style="color:#619BE4">destroy()</span> ***** 销毁连接 <br/> # <span style="color:#619BE4">flushHeaders()</span> ***** 刷新请求头 <br/> # <span style="color:#619BE4">getHeader()</span> ***** 读取请求中的一个请求头。 该名称不区分大小写。 返回值的类型取决于提供给 request.setHeader() 的参数 <br/> # <span style="color:#619BE4">[eve]-on()</span> ***** HTTP的客户端对象事件 <br/> ### 参数说明 <b style="color:#808080;">event:</b> * 类型:字符层 * 默认值:无 * 描述: 事件类型 * 可选值:[ abort | connect | continue | information | response | socket | timeout | upgrade ] <br/> # <b style="color:#4F4F4F;">http.Server</b> <br/> # <span style="color:#619BE4">listen()</span> ***** 服务器开始监听端口 <br/> ### 参数说明 <b style="color:#808080;">port:</b> * 类型:整型 * 默认值:无 * 描述: 需要监听的端口号 * 可选值:[ ] <br/> # <span style="color:#619BE4">[eve]-on()</span> ***** HTTP的服务端对象事件 <br/> ### 参数说明 <b style="color:#808080;">event:</b> * 类型:字符层 * 默认值:无 * 描述: 事件类型 * 可选值:[ request ] <br/> # <span style="color:#619BE4">close()</span> ***** 关闭服务端 <br/> # <b style="color:#4F4F4F;">http.IncomingMessage </b> <br/> # <span style="color:#619BE4">[new]-IncomingMessage()</span> ***** http.Server 或 http.ClientRequest 创建,并分别作为第一个参数传给 'request' 和 'response' 事件。 它可用于访问响应状态、消息头、以及数据。 <br/> # <span style="color:#619BE4">headers</span> ***** 请求头 <br/> # <span style="color:#619BE4">rowHeaders</span> ***** 请求头原始数据 <br/> # <span style="color:#619BE4">url</span> ***** 请求路径,包含query参数 <br/> # <span style="color:#619BE4">method</span> ***** 请求方法名 <br/> # <b style="color:#4F4F4F;">http.ServerResponse</b> <br/> # <span style="color:#619BE4">[ext]-stream.Writable()</span> ***** 可写入流 <br/> # <span style="color:#619BE4">[new]-ServerResponse()</span> ***** 由 HTTP 服务器在内部创建,而不是由用户创建。 它作为第二个参数传给 'request' 事件 <br/> # <span style="color:#619BE4">setHeader()</span> ***** 设置响应头 <br/> # <span style="color:#619BE4">writeHead()</span> ***** 写入响应头 <br/>