【发布时间】:2021-05-22 04:08:34
【问题描述】:
我有这个改造电话:
api.enqueue(new Callback<ResponseBody>() {
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
t.printStackTrace();
}
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
try {
if (response.isSuccessful()) { // 200 - 300
String responseBody = response.body().string();
...
}
} catch (IOException e) {
e.printStackTrace()
}
}
}
并希望使用 MockWebServer 触发 .string() 中的 IOException。
我试过了
MockResponse mockResponse = new MockResponse()
.setResponseCode(200)
.setSocketPolicy(SocketPolicy.DISCONNECT_DURING_RESPONSE_BODY)
.setBody("{}");
但这最终会出现在OnFailure。
如何触发IOException?
【问题讨论】:
标签: android retrofit okhttp mockwebserver