模块 jdk.httpserver
com.sun.net.httpserver
包定义了一个高级 API,用于构建支持 HTTP 和 HTTPS 的服务。 SimpleFileServer 类实现了一个简单的 HTTP-only 文件服务,用于测试、开发和调试目的。默认实现是通过 jwebserver
工具和模块的主要入口点提供的,也可以使用 java -m jdk.httpserver
调用。
com.sun.net.httpserver.spi
包指定了一个服务提供者接口 (SPI),用于基于 com.sun.net.httpserver
API 定位 HTTP 服务实现。
HTTP 服务 API 使用的系统属性
以下是 JDK 中默认 HTTP 服务实现使用的 JDK 特定系统属性的列表。如果给定一个不解析为数字的字符串,则以下任何采用数字值的属性均采用默认值。
sun.net.httpserver.idleInterval
(默认值:30 秒)
空闲连接保持打开状态的最长时间(以秒为单位)。此计时器具有特定于实现的粒度,这可能意味着空闲连接的关闭时间晚于指定的时间间隔。小于或等于零的值映射到默认设置。jdk.httpserver.maxConnections
(默认值:-1)
一次打开的最大连接数。这包括活动和空闲连接。如果为零或负数,则不强制执行任何限制。sun.net.httpserver.maxIdleConnections
(默认值:200)
一次最大空闲连接数。如果设置为零或负值,则连接在使用后关闭。sun.net.httpserver.drainAmount
(默认值:65536)
将从未被其HttpHandler
完全消耗的请求正文中自动读取和丢弃的最大字节数。如果剩余未读字节数小于此限制,则连接将放入空闲连接缓存中。如果没有,那么它将被关闭。sun.net.httpserver.maxReqHeaders
(默认值:200)
请求中接受的标头字段的最大数量。如果在读取标头时超过此限制,则会终止连接并忽略请求。如果该值小于或等于零,则使用默认值。sun.net.httpserver.maxReqTime
(默认值:-1)
允许接收请求标头和正文的最长时间(以毫秒为单位)。实际上,实际时间是请求大小、网络速度和处理程序处理延迟的函数。小于或等于零的值表示时间不受限制。如果超过限制,则连接终止,处理程序将收到IOException
。此计时器具有特定于实现的粒度,这可能意味着请求在指定时间间隔之后中止。sun.net.httpserver.maxRspTime
(默认值:-1)
允许接收响应标头和正文的最长时间(以毫秒为单位)。实际上,实际时间是响应大小、网络速度和处理程序处理延迟的函数。小于或等于零的值表示时间不受限制。如果超过限制,则连接终止,处理程序将收到IOException
。此计时器具有特定于实现的粒度,这可能意味着响应在指定时间间隔之后中止。sun.net.httpserver.nodelay
(默认值:false)
boolean,如果为真,则在所有传入连接上设置TCP_NODELAY
套接字选项。
- 模块图:
- 工具指南:
- jwebserver
- 自从:
- 9
-
包
输出包描述提供简单的高级 Http 服务 API,可用于构建嵌入式 HTTP 服务。提供一个可插入的服务提供者接口,它允许用其他实现替换 HTTP 服务实现。 -
服务
用途