UrlRequest

public abstract class UrlRequest


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

摘要

嵌套类型

public abstract class UrlRequest.Builder

UrlRequest 的构建器。

public abstract class UrlRequest.Callback

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

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

public class UrlRequest.Status

getStatus 返回的请求状态值。

public abstract class UrlRequest.StatusListener

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

公共构造函数

公共方法

abstract void

取消请求。

abstract void

跟踪待处理的重定向。

abstract void

查询请求的状态。

abstract boolean

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

abstract void
read(ByteBuffer buffer)

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

abstract void

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

公共构造函数

UrlRequest

public UrlRequest()

公共方法

取消

public abstract void cancel()

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

followRedirect

public abstract void followRedirect()

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

getStatus

public abstract void getStatus(UrlRequest.StatusListener listener)

查询请求的状态。

参数
UrlRequest.StatusListener listener

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

isDone

public abstract boolean isDone()

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

返回
boolean

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

读取

public abstract void read(ByteBuffer buffer)

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

参数
ByteBuffer buffer

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

start

public abstract void start()

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