模块 okhttps

类 WHttpTask

所有已实现的接口:
Cancelable

public class WHttpTask extends HttpTask<WHttpTask>
  • 构造器详细资料

  • 方法详细资料

    • isWebsocket

      public boolean isWebsocket()
      覆盖:
      isWebsocket 在类中 HttpTask<WHttpTask>
      返回:
      是否是 Websocket 通讯
    • heatbeat

      public WHttpTask heatbeat(int pingSeconds, int pongSeconds)
      设置心跳间隔 覆盖 OkHttp 原有的心跳模式,主要区别如下: 1、客户端发送的任何消息都具有一次心跳作用 2、服务器发送的任何消息都具有一次心跳作用 3、若服务器超过 3 * pongSeconds 秒没有回复心跳,才判断心跳超时 4、可指定心跳的具体内容(默认为空) 由于 OkHttp 底层并未暴露 websocket 协议里 opcode 的接口,所以该心跳的 opcode 始终是 2,并不是 websocket 协议里定义的 9 所以如果服务器要求客户端心跳的 opcode 必须是 9 的话,请使用 OkHttp 的原生心跳: [http://okhttps.ejlchina.com/v2/websocket.html#%E5%85%A8%E5%B1%80%E5%BF%83%E8%B7%B3%E9%85%8D%E7%BD%AE] 另若需要 可使用 pingSupplier(Supplier) 方法指定心跳发送的具体内容
      参数:
      pingSeconds - 客户端心跳间隔秒数(0 表示不需要心跳)
      pongSeconds - 服务器心跳间隔秒数(0 表示不需要心跳)
      返回:
      WHttpTask
      从以下版本开始:
      v2.3.0
    • flexiblePing

      public WHttpTask flexiblePing(boolean flexiblePing)
      用于兼容某些强制客户端必须以固定的时间间隔发送心跳的服务器
      参数:
      flexiblePing - Ping 的间隔是否灵活可变(默认为 true, 为 false 时客户端 Ping 的间隔固定,普通的消息不做为 Ping)
      返回:
      WHttpTask
      从以下版本开始:
      v2.5.0
    • pingSupplier

      public WHttpTask pingSupplier(Supplier<String> pingSupplier)
      参数:
      pingSupplier - 心跳数据提供者
      返回:
      WHttpTask
    • pingSupplier

      public Supplier<String> pingSupplier()
    • listen

      public WebSocket listen()
      启动 WebSocket 监听
      返回:
      WebSocket
    • close

      public boolean close(int code, String reason)
      参数:
      code - 状态码
      reason - 原因
      返回:
      true: 被关闭, false: 当前尚未建立连接
      从以下版本开始:
      v3.1.0
    • isConnected

      public boolean isConnected()
      返回:
      连接是否已建立
    • setOnOpen

      public WHttpTask setOnOpen(WebSocket.Listener<HttpResult> onOpen)
      连接打开监听
      参数:
      onOpen - 监听器
      返回:
      WHttpTask
    • setOnException

      public WHttpTask setOnException(WebSocket.Listener<Throwable> onException)
      连接异常监听
      参数:
      onException - 监听器
      返回:
      WHttpTask
    • setOnMessage

      public WHttpTask setOnMessage(WebSocket.Listener<WebSocket.Message> onMessage)
      消息监听
      参数:
      onMessage - 监听器
      返回:
      WHttpTask
    • setOnClosing

      public WHttpTask setOnClosing(WebSocket.Listener<WebSocket.Close> onClosing)
      正在关闭监听
      参数:
      onClosing - 监听器
      返回:
      WHttpTask
    • setOnClosed

      public WHttpTask setOnClosed(WebSocket.Listener<WebSocket.Close> onClosed)
      已关闭监听(当连接被取消或发生异常时,也会走该回调)
      参数:
      onClosed - 监听器
      返回:
      WHttpTask
    • setMaxClosingSecs

      public WHttpTask setMaxClosingSecs(int maxClosingSecs)
      设置在 OnClosing 回调执行完毕后,OnClosed 回调执行的最晚延迟时间
      参数:
      maxClosingSecs - 最大 Closing 时长(单位:秒,默认:10秒)
      返回:
      WHttpTask
    • pingSeconds

      public int pingSeconds()
    • pongSeconds

      public int pongSeconds()