类:IncomingMessage
类: IncomingMessage
处理 HTTP/HTTPS 请求的响应。
进程: 主进程, Utility
此类未从 'electron' 模块导出。它仅作为 Electron API 中其他方法的返回值可用。
IncomingMessage 实现了 可读流 接口,因此是一个 EventEmitter。
实例事件
事件: 'data'
返回
chunkBuffer - 响应体数据块。
data 事件是传输响应数据到应用程序代码的常用方法。
事件: 'end'
指示响应体已结束。必须在 'data' 事件之前触发。
事件: 'aborted'
在 HTTP 事务进行中取消请求时发出。
事件: 'error'
返回
errorError - 通常包含一个错误字符串,用于标识失败的根本原因。
在流式传输响应数据事件时遇到错误时发出。例如,如果服务器在响应仍在流式传输时关闭底层连接,则会在响应对象上发出一个 error 事件,随后会在请求对象上发出一个 close 事件。
实例属性
一个 IncomingMessage 实例具有以下可读属性
response.statusCode
一个 Integer,表示 HTTP 响应状态码。
response.statusMessage
一个 string,表示 HTTP 状态消息。
response.headers
一个 Record<string, string | string[]>,表示 HTTP 响应头。headers 对象的格式如下
- 所有头名称都小写。
- 丢弃
age、authorization、content-length、content-type、etag、expires、from、host、if-modified-since、if-unmodified-since、last-modified、location、max-forwards、proxy-authorization、referer、retry-after、server或user-agent的重复项。 set-cookie始终是一个数组。重复项将添加到数组中。- 对于重复的
cookie头,值将用 '; ' 连接在一起。 - 对于所有其他头,值将用 ', ' 连接在一起。
response.httpVersion
一个 string,指示 HTTP 协议版本号。典型值为 '1.0' 或 '1.1'。此外,httpVersionMajor 和 httpVersionMinor 是两个整数值的可读属性,分别返回 HTTP 主版本号和次版本号。
response.httpVersionMajor
一个 Integer,指示 HTTP 协议主版本号。
response.httpVersionMinor
一个 Integer,指示 HTTP 协议次版本号。
response.rawHeaders
一个 string[],包含原始 HTTP 响应头,完全按照接收到的方式。键和值在同一个列表中。它不是元组列表。因此,偶数偏移量是键值,奇数偏移量是关联的值。头名称不小写,重复项不合并。
// Prints something like:
//
// [ 'user-agent',
// 'this is invalid because there can be only one',
// 'User-Agent',
// 'curl/7.22.0',
// 'Host',
// '127.0.0.1:8000',
// 'ACCEPT',
// '*/*' ]
console.log(response.rawHeaders)