RequestBuilder¶
RequestBuilder
主要用来构建请求示例。
快速开始¶
创建由 Service 接口定义的 API 端点的实现。
val baseUrl = ....
RequestBuilder(baseUrl).create(QRService::class.java)
配合 Request2 使用
val baseUrl = ....
RequestBuilder(baseUrl)
.getApi(QRService::class.java) {
generateQRCode(DateUtils.getCurrentTime())
}.collect {
}
RequestBuilder 配置¶
RequestBuilder
提供了默认实现,但是如果你想要自定义可以通过继承 RequestBuilder
来重写对应的方法。
class MyRequestBuilder: RequestBuilder(Constant.ROOT_URL) {
override fun setTimeOut(): Long {
return 10L
}
}
设置超时时间¶
通过重载 setTimeOut
方法,你可以设置 call
, read
, connect
, write
的超时时间。
override fun setTimeOut(): Long {
return 10L
}
配置 okhttp 客户端¶
override fun okHttpConfiguration(builder: OkHttpClient.Builder) {
builder.apply {
... // 自定义OKHttpClient的配置
}
}
配置 retrofit 客户端¶
override fun retrofitConfiguration(builder: Retrofit.Builder) {
}