UrlRequest

abstract class UrlRequest


控制 HTTP 请求(GET、PUT、POST 等)。由 UrlRequest.Builder 创建,可通过调用 newUrlRequestBuilder 获取。注意:所有方法都必须在传递给 newUrlRequestBuilder 的 Executor 上调用。

摘要

嵌套类型

abstract class UrlRequest.Builder

UrlRequest 的构建器。

abstract class UrlRequest.Callback

Cronet 的用户可扩展此类,以接收指示正在处理的 UrlRequest 的进度的回调。

一种注释,用于标记尚未被视为稳定的 API。

由 getStatus 返回的请求状态值。

与 getStatus 一起使用的监听器类,用于接收 UrlRequest 的状态。

公共构造函数

公共函数

abstract Unit

取消请求。

abstract Unit

跟踪待处理的重定向。

abstract Unit

查询请求的状态。

abstract Boolean

如果请求已成功启动并已完成(已完成、已取消或已失败),则返回 true。

abstract Unit
read(buffer: ByteBuffer!)

尝试将部分响应正文读取到提供的缓冲区中。

abstract Unit

启动请求,所有回调都转到 Callback。

公共构造函数

UrlRequest

UrlRequest()

公共函数

取消

abstract fun cancel(): Unit

取消请求。可随时调用。取消完成后,系统会调用 onCanceled(),并且不会再调用其他回调方法。如果请求已完成或尚未开始,则调用 cancel() 不会产生任何影响,并且不会调用 onCanceled()。如果 UrlRequest 构建期间传入的 Executor 在单线程上运行任务,并且在该线程上调用了 cancel(),则在调用 cancel() 之后,除了 onCanceled() 之外,不会再调用任何回调方法。否则,在 cancel() 完成后,最多可以调用一个回调方法。

followRedirect

abstract fun followRedirect(): Unit

跟踪待处理的重定向。对于 onRedirectReceived() 的每次调用,此方法最多只能调用一次。

getStatus

abstract fun getStatus(listener: UrlRequest.StatusListener!): Unit

查询请求的状态。

参数
listener: UrlRequest.StatusListener!

一个 StatusListener,将使用请求的当前状态进行调用。在创建请求时,系统会回调传入的 Executor 来调用 listener。

isDone

abstract fun isDone(): Boolean

如果请求已成功启动并已完成(已完成、已取消或已失败),则返回 true。

返回
Boolean

如果请求已成功启动并已完成(已完成、已取消或失败),则为 true。

读取

abstract fun read(buffer: ByteBuffer!): Unit

尝试将部分响应正文读取到提供的缓冲区中。对于 Callback 的 onResponseStarted() 和 onReadCompleted() 方法的每次调用,最多只能调用一次。每次调用都会导致对 Callback'sonReadCompleted() 方法(如果读取了数据)、onSucceeded() 方法(如果没有更多数据可供读取)或 onFailed() 方法(如果发生错误)的异步调用。

参数
buffer: ByteBuffer!

ByteBuffer 要写入的响应正文。必须是直接 ByteBuffer。在请求回调到 Callback 之前,嵌入器不得读取或修改缓冲区的位置、限制或位置与限制之间的数据。

start

abstract fun start(): Unit

启动请求,所有回调都转到 Callback。只能调用一次。如果已调用 cancel,则可能不会调用此方法。