软件包  jdk.incubator.http

Interface WebSocket.Builder

  • Enclosing interface:
    WebSocket


    public static interface WebSocket.Builder
    用于创建WebSocket实例的构建器。
    Incubating Feature.将在以后的版本中删除。

    要构建WebSocketcreate建设者,将其配置为需要通过调用中间的方法(即返回建设者本身的),然后最后调用buildAsync()获得CompletableFuture ,导致WebSocket

    如果未调用中间方法,则将使用适当的默认值(或行为)。 除非另有说明,否则重复调用中间方法将覆盖先前的值(或覆盖先前的行为)。

    Builder实例对于没有外部同步的多个线程使用是不安全的。

    从以下版本开始:
    9
    • 方法详细信息

      • header

        WebSocket.Builder header​(String name,
                                 String value)
        将给定的名称 - 值对添加到开启握手的附加标题列表中。

        不允许在WebSocket协议中定义的头文件。

        参数
        name - 标题名称
        value - 标头值
        结果
        这个建设者
      • subprotocols

        WebSocket.Builder subprotocols​(String mostPreferred,
                                       String... lesserPreferred)
        在开放握手期间包括给定子协议的请求。

        在所请求的子协议中,最多一个将被服务器选择。 该子协议可从WebSocket.getSubprotocol()获得 子协议以优先级顺序指定。

        每个给定的子协议必须符合WebSocket协议中定义的相关规则。

        如果未调用此方法,则不会请求子协议。

        参数
        mostPreferred - 最优选的子协议
        lesserPreferred - 较不优选的子协议,最不喜欢的是子协议
        结果
        这个建设者
      • connectTimeout

        WebSocket.Builder connectTimeout​(Duration timeout)
        设置开启握手的超时。

        如果开口握手未在规定的时间内完成,则CompletableFuture从返回buildAsync()完成非常有HttpTimeoutException

        如果此方法未被调用,那么超时被认为是无限的。

        参数
        timeout - 超时,非 negative ,非 ZERO
        结果
        这个建设者