如何处理 OkHttp Java 中的长响应?
How can I handle long response in OkHttp Java?
我正在尝试在我的 JAVA 项目中使用 okhttp-3.12.0 和 okio-1.9.0对 Web 服务进行 POST 调用。
我能够成功创建记录,但是,Web 服务 returns 数据类型 long 的响应随后抛出 NoSuchMethodError,因为 OkHttp 库尝试使用 readUtf8LineStrict 读取它。
有经验的人可以告诉我如何解决这个问题吗?我需要对底层库进行更改还是应该采取不同的方法?
- 进行Post呼叫
Response response = client.newCall(request).execute();
System.out.println(response);
- Web 服务Returns 响应正文
{"recordId":"ABC123DEFZhC8O_KS8V2mkWPXreXpLHFZgSIyjH5Ue9Z4sUDe4ghkWsZcYlh55lrSTooSstxgMouuleKr0TqjYzuE2Xjz8OWBvxwAc8uLyJNm0TF1fUGwBz9_nrIgpsHcr-lwwQzOvxpCBwE-NV-NIym5ZLE5SgmO4jty0fUEld4kHt7yOL2_94-jTavICTwMsIaPfvXxx74Cox4R_lONNlmd2R8BSLhGHxLW-Hfh-fLZhOmPMF-2zmXQm2h3Poj-SI6PY_f7F2tLmEyR92JR33QFfVVOmRgJ5mC0U5adG_BXyKlREvlQIiwtvEQY3InIjlJZw0mpYAEY4VD7QmOPfGWYpwgUwqZELmVPIESrq2dT3LHIdfPLBQ**"}
- OkHttp Java 库抛出
Exception in thread "main" java.lang.NoSuchMethodError: 'java.lang.String okio.BufferedSource.readUtf8LineStrict(long)'
通过更新我使用的库,我能够收到长文本响应。
这两个库是我可以在没有 Kotlin 的情况下工作的最新版本。
- okhttp 3.12.0
- okio 1.17.5
我正在尝试在我的 JAVA 项目中使用 okhttp-3.12.0 和 okio-1.9.0对 Web 服务进行 POST 调用。
我能够成功创建记录,但是,Web 服务 returns 数据类型 long 的响应随后抛出 NoSuchMethodError,因为 OkHttp 库尝试使用 readUtf8LineStrict 读取它。
有经验的人可以告诉我如何解决这个问题吗?我需要对底层库进行更改还是应该采取不同的方法?
- 进行Post呼叫
Response response = client.newCall(request).execute();
System.out.println(response);
- Web 服务Returns 响应正文
{"recordId":"ABC123DEFZhC8O_KS8V2mkWPXreXpLHFZgSIyjH5Ue9Z4sUDe4ghkWsZcYlh55lrSTooSstxgMouuleKr0TqjYzuE2Xjz8OWBvxwAc8uLyJNm0TF1fUGwBz9_nrIgpsHcr-lwwQzOvxpCBwE-NV-NIym5ZLE5SgmO4jty0fUEld4kHt7yOL2_94-jTavICTwMsIaPfvXxx74Cox4R_lONNlmd2R8BSLhGHxLW-Hfh-fLZhOmPMF-2zmXQm2h3Poj-SI6PY_f7F2tLmEyR92JR33QFfVVOmRgJ5mC0U5adG_BXyKlREvlQIiwtvEQY3InIjlJZw0mpYAEY4VD7QmOPfGWYpwgUwqZELmVPIESrq2dT3LHIdfPLBQ**"}
- OkHttp Java 库抛出
Exception in thread "main" java.lang.NoSuchMethodError: 'java.lang.String okio.BufferedSource.readUtf8LineStrict(long)'
通过更新我使用的库,我能够收到长文本响应。
这两个库是我可以在没有 Kotlin 的情况下工作的最新版本。
- okhttp 3.12.0
- okio 1.17.5