2016-09-07 99 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