Module java.net.http
Package java.net.http

Interface WebSocket.Builder

封装的接口:
WebSocket

public static interface WebSocket.Builder
一个WebSocket客户端的构建器。

通过调用HttpClient.newWebSocketBuilder来创建构建器。中间(类似setter)方法会改变构建器的状态,并返回调用它们的相同构建器。如果未调用中间方法,则会假定适当的默认值(或行为)。Builder在没有外部同步的情况下不能被多个线程安全使用。

自 JDK 版本:
11
  • Method Details

    • header

      WebSocket.Builder header(String name, String value)
      将给定的名称-值对添加到在握手期间发送的额外HTTP标头列表中。

      WebSocket协议中定义的标头是非法的。如果未调用此方法,则不会发送任何额外的HTTP标头。

      参数:
      name - 标头名称
      value - 标头值
      返回:
      此构建器
    • connectTimeout

      WebSocket.Builder connectTimeout(Duration timeout)
      设置建立WebSocket连接的超时时间。

      如果在指定的持续时间内未建立连接,则构建WebSocket将失败,并显示HttpTimeoutException。如果未调用此方法,则假定为无限超时。

      参数:
      timeout - 超时时间,非负数,非
      返回:
      此构建器
    • subprotocols

      WebSocket.Builder subprotocols(String mostPreferred, String... lesserPreferred)
      设置对给定子协议的请求。

      在构建WebSocket之后,可以通过WebSocket.getSubprotocol()查询实际子协议。

      子协议按优先顺序指定。最优先的子协议首先指定。如果有任何其他子协议,则从最优先到最不优先枚举它们。

      不符合子协议标识符语法的子协议是非法的。如果未调用此方法,则不会请求任何子协议。

      参数:
      mostPreferred - 最优先的子协议
      lesserPreferred - 较不优先的子协议
      返回:
      此构建器
    • buildAsync

      CompletableFuture<WebSocket> buildAsync(URI uri, WebSocket.Listener listener)
      构建一个连接到给定URI并与给定Listener关联的WebSocket

      返回一个CompletableFuture,它将正常完成并显示生成的WebSocket,或者在以下错误之一异常完成:

      参数:
      uri - WebSocket URI
      listener - 侦听器
      返回:
      带有WebSocketCompletableFuture