gpt4 book ai didi

android - 在异步 Http 客户端上设置超时

转载 作者:太空宇宙 更新时间:2023-11-03 10:22:33 27 4
gpt4 key购买 nike

我正在使用可在此处找到的异步 Http 客户端:http://loopj.com/android-async-http/

除了我提出的大约每 10 个请求中有 1 个最终给我一个无限进度对话框之外,它的效果很好,我相信这意味着无论出于何种原因,都不会返回任何类型的响应,因为我已经编写了代码来关闭onSuccess 和 onFailure 中的对话框,所以我有点困惑这是怎么发生的。

这是我设置请求的代码:

  public static void post(String token,String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
Log.i(token,"token");
client.addHeader("token", token);
client.setTimeout(3000);
client.post(url, params, responseHandler);


}

这是我重写 onSuccess 和 onFailure 的地方:

@Override
public void onFailure(Throwable arg0, String arg1) {
// TODO Auto-generated method stub
super.onFailure(arg0, arg1);
pdialog.dismiss();
Log.i("failed to login", arg1.toString());
Toast.makeText(getActivity(), arg1.toString() , Toast.LENGTH_LONG).show();
}

@Override
public void onSuccess(final JSONObject json) {
pdialog.dismiss();
}

最佳答案

库似乎在做你想让它做的事,setTimeout 来自 AsyncHttpClient 类的代码

public void setTimeout(int timeout){
final HttpParams httpParams = this.httpClient.getParams();
ConnManagerParams.setTimeout(httpParams, timeout);
HttpConnectionParams.setSoTimeout(httpParams, timeout);
HttpConnectionParams.setConnectionTimeout(httpParams, timeout);
}

如果它不起作用,那么最好报告问题 here

关于android - 在异步 Http 客户端上设置超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17714255/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com