Java 如何在android中增加OkHttp中的请求超时?
我正在尝试制作一个将连接到flask服务器的应用程序。我正在使用OkHttp库发送和接收数据。我的问题是我想运行一个python脚本,它至少需要2分钟才能完成,然后在完成后点击一个按钮发送一条“成功”消息。因此,每当我向服务器发送请求时,我总是在android logcat中收到一条超时消息。因此,我想知道是否有任何方法可以增加超时 以下是我的onResponse函数:Java 如何在android中增加OkHttp中的请求超时?,java,android,okhttp,Java,Android,Okhttp,我正在尝试制作一个将连接到flask服务器的应用程序。我正在使用OkHttp库发送和接收数据。我的问题是我想运行一个python脚本,它至少需要2分钟才能完成,然后在完成后点击一个按钮发送一条“成功”消息。因此,每当我向服务器发送请求时,我总是在android logcat中收到一条超时消息。因此,我想知道是否有任何方法可以增加超时 以下是我的onResponse函数: public void onResponse(Call call, final Response response) thro
public void onResponse(Call call, final Response response) throws IOException {
runOnUiThread(new Runnable() {
@Override
public void run() {
try {
String loginResponseString = response.body().string().trim();
Log.d("LOGIN", "Response from the server : " + loginResponseString);
if (loginResponseString.equals("success")) {
Log.d("Artist", "Artist Found");
} else if (loginResponseString.equals("failure")) {
Log.d("Artist", "Artist Not Found");
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(Artist.this, "Something went wrong. Please try again later.", Toast.LENGTH_SHORT).show();
}
}
});
每当我发出请求时,代码总是执行catch部分
Android Logcat:
D/FAIL: timeout
另外,我是个初学者,对flask和android开发不太了解这是一个40秒的示例。您可以将其修改为120秒
OkHttpClient.Builder builder = new OkHttpClient.Builder()
.addInterceptor(new HttpInterceptor())
.connectTimeout(40000, TimeUnit.MILLISECONDS)
.readTimeout(40000, TimeUnit.MILLISECONDS)
您可以在
OkHttpClient.Builder
上配置超时:这是否回答了您的问题?