问题标签 [okhttp3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
22 回答
212206 浏览

java - 使用 Retrofit 2 进行日志记录

我正在尝试获取在请求中发送的确切 JSON。这是我的代码:

但我只在日志中看到这一点:

考虑到我们过去使用 Retrofit 1的删除setLog()和使用,我应该如何进行正确的日志记录?setLogLevel()

0 投票
1 回答
7921 浏览

android - MultipartBuilder 无法在 okhttp:3.0.0-RC1 中解析

我已经使用了 okhttp并且它在以下依赖项下运行良好:

最近我更新了:

它显示错误,例如MultipartBuilder无法解决。

我正在使用我之前上传文件的答案上传图像。

有什么方法可以使用 来实现相同的目标okhttp:3.0.0-RC1吗?

0 投票
1 回答
2567 浏览

android - 创建多个具有相同连接池的 OkHttp3 客户端

我正在使用 Retrofit2。我可以创建几个 OkHttp3 客户端并与其他客户端共享第一个实例的连接池吗?它是线程安全和良好的做法吗?

0 投票
1 回答
10953 浏览

android - OkHttp 3 和 HttpURLConnection

我对如何将 OkHttp 升级到 v3.0.0 同时保留使用HttpURLConnection. 我们当前的依赖项是:

变更日志指出:

Apache HTTP 客户端和 HttpURLConnection API 已弃用。它们继续像往常一样工作,但我们正在将所有内容移至新的 OkHttp 3 API。okhttp-apache 和 okhttp-urlconnection 模块应该只用于加速向 OkHttp 的请求/响应 API 的转换。这些不推荐使用的模块将在即将发布的 OkHttp 3.x 版本中删除。

不幸的是,我不清楚“我们将所有内容都转移到新的 OkHttp 3 API”是什么意思。

我试图依赖,com.squareup.okhttp:okhttp-urlconnection:3.0.0但那不存在。

我应该只保留com.squareup.okhttp:okhttp-urlconnection:2.7.0并升级com.squareup.okhttp:okhttp到 3.0.0 吗?还是这句话的意思是只依赖com.squareup.okhttp:okhttp应该工作?

0 投票
1 回答
1747 浏览

android - RxJava、Proguard 和 sun.misc.Unsafe

我在使用RxJava(1.1.0) 时遇到问题Proguard。我没有更改 RxJava 版本或其.pro文件,但在更新后OkHttp我无法编译使用,因为我收到了关于不存在Proguard的警告。sun.misc.Unsafe

rxJava.pro

添加 后-dontwarn,可以编译 apk,但是一旦我使用RxJava(使用RxAndroid's AndroidSchedulers.mainThread()),它就会因以下堆栈跟踪而崩溃:

我不明白为什么会崩溃,它应该只是在它不存在时UnsafeAccess寻找sun.misc.Unsafe并返回。false

0 投票
4 回答
29663 浏览

android - 如何在 Android 的 OKHTTP 3.x 中动态(或循环)发送 post 参数?

我正在使用 OKHTTP 3.x 版本。我想发布多个参数,并想在循环中添加参数。我知道在 2.x 版本中,我可以使用 FormEncodingBuilder 并在循环中向其中添加参数,然后从中创建一个请求正文。但是在 3.x 中,该类已被删除。

这是我当前的代码:

现在我想添加 5 个参数,但在一个循环中,即通过在循环中构建 formbody 来创建请求体。就像我上面写的那样,我知道如何在 OKHTTP 2.x 版中做到这一点,但我使用的是 3.x 版。

任何帮助或指导表示赞赏。

提前致谢

0 投票
2 回答
1707 浏览

java - okhttp3 请求android项目失败

我正在okhttp为我的 Android 项目使用 , 。所有要求都很好,但是当我需要为客户调用请求时,它会显示以下错误:

我需要创建一个这样的调用:

Call call = client.newCall(request);

0 投票
12 回答
71861 浏览

cookies - 使用 OkHttp 3 自动处理 cookie

我正在使用 okhttp 3.0.1。

我在每个地方都得到了 okhttp2 的 cookie 处理示例

请有人指导我如何在版本 3 中使用。 setCookieHandler 方法在版本 3 中不存在。

0 投票
1 回答
6511 浏览

android - 使用okHttp3上传动态文件数

如何使用OkHttp v3 管理动态文件数量的上传,我已经使用旧版本的 OkHttp 实现了compile 'com.squareup.okhttp:okhttp:2.6.0'

现在对 Form 类和 Multipart 主体进行了一些更改。他们用更强大的 FormBody 和 FormBody.Builder 组合替换了不透明的 FormEncodingBuilder。同样,他们将 MultipartBuilder 升级为 MultipartBody、MultipartBody.Part 和 MultipartBody.Builder。

下面的代码是旧版本

但是现在对于OkHttp <version>3.0.1</version>文件上传的代码实现类似于下面的代码(源代码

我尝试了相同的逻辑,MultipartBody但没有找到任何富有成效的解决方案。或者我是否需要if else针对不同的情况实施相同的操作。(这是不可行的)

0 投票
1 回答
3535 浏览

java - OkHttp 客户端返回一个空值

我正在尝试将 okhttpclient 与 okhttp3 一起使用,但它返回一个空值。

这是我的代码:

然后 responseData 返回 {"result":[]}

我尝试使用上面相同的 url,但使用不同的 httpClient 方法,它返回我想要的值,这里是 httpclient 代码:

请帮助我,有 okhttp 经验的人,为什么我需要 okhttp ?因为 httpClient 在 sdk 23 中已经被弃用了,谢谢。