2016-09-07 93 views
0

您好我一直在使用了一段时间这个免费的GIT库现在,我只是经历一个非常非常奇怪的问题循环J AsyncHttp返回404

我有一个URL(网页API),它返回一个JSON格式的数据。

是的,它存在于浏览器中我尝试了所有主要浏览器并显示它。 问题是,当我用它在我的AsyncHttp循环J则返回404错误,它将触发

onFailure(int statusCode, Header[] headers, byte[] responseBytes, Throwable throwable) 

状态代码是404,并且“未找到”抛出的消息。

我测试了其他项目上的其他URL,它只适用于这个特定的URL。这保证它可以在其他URL上使用。

我不能说这个API有问题,因为它在Web浏览器上显示JSON数据。 我清理项目重建没有任何作品。

请有人在这里有同样的斗争。 我检查清单,检查互联网连接都很好。就像我说过的,它可以在其他网址上运行,除了这个。

PS。我喜欢这个库的简单性,这就是为什么我不想切换到其他类似的库。

+0

什么是网址?,您正在尝试访问吗? – HourGlass

+0

给我你的电子邮件,发送它。 – ralphgabb

+0

无法在此分享。 https://twitter.com/lingaraj_25我的twitter处理。在这里跟着我。我会跟着你回来,直接发送网址。听起来不错? – HourGlass

回答

1

什么用IM是这个类

public class TerminalClient { 
private static AsyncHttpClient client = new AsyncHttpClient(); 
public static AsyncHttpClient syncHttpClient = new SyncHttpClient(); 

public static void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) { 
    getClient().setTimeout(1000 * 10); 
    getClient().get((url), params, responseHandler); 
} 

public static void asyncPost(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) { 
    getClient().setTimeout(1000 * 10); 
    getClient().post((url), params, responseHandler); 
} 

public static void post(String url, RequestParams params, BaseJsonHttpResponseHandler baseJsonHttpResponseHandler) { 
    getClient().setTimeout(1000 * 10); 
    getClient().post((url), params, baseJsonHttpResponseHandler); 
} 

private static AsyncHttpClient getClient() { 
    if (Looper.myLooper() == null) 
     return syncHttpClient; 
    return client; 
} 

}

我只需切换到POST的方法获取。这样做,很奇怪。是的。

这可以作为将来遇到这种问题的家伙的参考。

-Cheers

+0

并不奇怪,因为'get'是一个请求来检索数据,所以这是有道理的。但是......因为我已经这么做了,所以很容易犯这个错误,所以这篇文章非常有帮助。谢谢 :) – greysqrl