草庐IT

okhttps3

全部标签

Android Dagger2 + OkHttp + Retrofit 依赖循环错误

嘿,我正在使用Dagger2、Retrofit和OkHttp,我面临着依赖循环问题。当提供OkHttp时:@Provides@ApplicationScopeOkHttpClientprovideOkHttpClient(TokenAuthenticatorauth,Dispatcherdispatcher){returnnewOkHttpClient.Builder().connectTimeout(Constants.CONNECT_TIMEOUT,TimeUnit.SECONDS).readTimeout(Constants.READ_TIMEOUT,TimeUnit.SECON

android - 在 Android 中使用 RxJava、OkHttp 和 Okio 下载进度

在我们的应用程序中,我使用此代码下载图像文件。我需要在UI上显示下载进度(下载字节数百分比)。如何在此代码中获取下载进度?我搜索了解决方案,但仍然无法自行解决。ObservabledownloadObservable=Observable.create(sub->{Requestrequest=newRequest.Builder().url(media.getMediaUrl()).build();Responseresponse=null;try{response=http_client.newCall(request).execute();if(response.isSucces

android - 如何使用内容类型为 x-www-form-urlencoded 的 okhttp 库发布数据?

我用过这个方法https://stackoverflow.com/a/31744565/5829906但没有发布数据。这是我的代码OkHttpClientclient=newOkHttpClient();RequestBodyrequestBody=newMultipartBuilder().type(MultipartBuilder.FORM).addFormDataPart("rating","5").addFormDataPart("comment","Awesome").build();Requestrequest=newRequest.Builder().url(url).p

android - okhttp中无法解析MultipartBuilder :3. 0.0-RC1

我已经使用了okhttp并且它在以下依赖项下工作正常:compile'com.squareup.okhttp:okhttp:2.3.0'最近我更新了:compile'com.squareup.okhttp3:okhttp:3.0.0-RC1'它显示像MultipartBuilder无法解决的错误。我正在用我的PreviousAnswer上传图片上传文件。有没有办法使用okhttp:3.0.0-RC1实现同样的事情? 最佳答案 它叫做MultipartBody.Builder现在。来自ChangeLog:FormandMultipar

android - 在 Android 上使用 okhttp 2 的持久性 Cookie 存储

在我的Android应用程序中,我正在尝试从android-async-http切换到支持异步网络sind2.0版的okhttp。虽然前者附带了一个persistentcookiestorage的实现,我不知道如何为okhttp实现这样的东西。在我的应用程序中,我有一个登录例程,在此过程中发送一个get请求,如果成功,应该设置一个cookie。此cookie应附加到所有后续网络请求,并且应在应用程序重新启动后继续存在。我找到了thefollowinganswer在SO上,表明以下代码fragment,如果在应用程序的某处执行,将激活持久性cookie管理,okhttp将使用它:Cook

android - 使用 retrofit2 和 OkHttp3 时出现此错误。无法解析主机 "<host-name>": No address associated with hostname

我正在使用改造2和OkHttp3从服务器请求数据。我刚刚添加了一个离线缓存代码,但它没有按预期工作。我收到错误“无法解析主机“”:没有与主机名关联的地址。”当它试图从缓存中获取检索数据时(没有互联网连接时)会发生这种情况。下面是一段代码。publicstaticInterceptorprovideCacheInterceptor(){returnnewInterceptor(){@OverridepublicResponseintercept(Chainchain)throwsIOException{Responseresponse=chain.proceed(chain.reques

Android OkHttp,刷新过期 token

场景:我正在使用OkHttp/Retrofit访问网络服务:同时发送多个HTTP请求。在某个时候,授权token会过期,多个请求将收到401响应。问题:在我的第一个实现中,我使用了一个拦截器(此处已简化)并且每个线程都尝试刷新token。这会导致一团糟。publicclassSignedRequestInterceptorimplementsInterceptor{@OverridepublicResponseintercept(Chainchain)throwsIOException{Requestrequest=chain.request();//1.signthisrequest

android - 检测 OkHttp 响应是否来自缓存(使用 Retrofit)

有没有办法检测Retrofit响应是来自配置的OkHttp缓存还是实时响应?客户端定义:Cachecache=newCache(getCacheDirectory(context),1024*1024*10);OkHttpClientokHttpClient=newOkHttpClient.Builder().cache(cache).build();API定义:@GET("/object")Observable>getSomeObject();调用示例:RetroApiretroApi=newRetrofit.Builder().client(okHttpClient).baseUr

java - 无法让 OkHttp 的 response.body.toString() 返回字符串

我正在尝试使用OkHttp获取一些json数据,但无法弄清楚为什么当我尝试记录response.body().toString()时,我得到的是Results:﹕com.squareup.okhttp.Call$RealResponseBody@41c16aa8try{URLurl=newURL(BaseUrl);OkHttpClientclient=newOkHttpClient();Requestrequest=newRequest.Builder().url(url).header(/****/).build();Callcall=client.newCall(request);

java - 无法让 OkHttp 的 response.body.toString() 返回字符串

我正在尝试使用OkHttp获取一些json数据,但无法弄清楚为什么当我尝试记录response.body().toString()时,我得到的是Results:﹕com.squareup.okhttp.Call$RealResponseBody@41c16aa8try{URLurl=newURL(BaseUrl);OkHttpClientclient=newOkHttpClient();Requestrequest=newRequest.Builder().url(url).header(/****/).build();Callcall=client.newCall(request);