標籤:litehttp
今天接觸到了LiteHttp架構,覺得挺不錯,比Vollery更輕量級。詳細介紹和用法,請參考:
http://www.eoeandroid.com/thread-326584-1-1.html
上面有詳細的介紹,這裡簡單介紹一下怎麼用這個架構來給服務端發送請求,完成用戶端使用者名稱和密碼的驗證。
GitHub連結:
https://github.com/litesuits/android-lite-async
1. 用上面的串連下載相應的liteHttp.jar, 在項目中引用它(Eclipse和Andriod Studio的引用方法不一樣,請分別處理)。
2. 初始化
Liteclient = LiteHttpClient.newApacheHttpClient(context);
HttpAsyncExecutor asyncExecutor = HttpAsyncExecutor.newInstance(client);
3. 發送請求,這裡會給服務端發送一個驗證的loginUrl, 後面會帶上使用者名稱和密碼, 然後服務端(前提是服務端的介面已經OK)會返回一個Json串(包括Authorize和Version兩個屬性),ApiLoginReturn這個對象就定義了服務端返回Json串中的屬性(Authorize, Version)。當驗證成功後,這個架構會自動解析服務端返回的Json串,然後將返回的值自動封裝在ApiLoginReturn對象中,這樣就能根據ApiLoginReturn對象中Authorize的返回值來驗證使用者名稱和密碼是否正確。驗證成功和失敗都有相應的回呼函數,能夠根據不同的情境做不同的邏輯處理。
asyncExecutor.execute(new Request(loginUrl), new HttpModelHandler<ApiLoginReturn>() {
@Override
protected void onSuccess(ApiLoginReturn o, Response response) {
if (o.Authorize) {
Toast.makeText(context, "驗證成功", Toast.LENGTH_LONG).show();
} else {
Toast.makeText(context, "驗證失敗", Toast.LENGTH_LONG).show();
}
}
@Override
protected void onFailure(HttpException e, Response response) {
Toast.makeText(context, "驗證串連失敗,請檢查網路連接情況", Toast.LENGTH_LONG).show();
}
});
public static class ApiLoginReturn {
public boolean Authorize; //驗證結果
public String Version; //版本號碼
}
其他的一些功能,比如多檔案上傳功能,可以參考上面的文章。
LiteHttp極簡且智能的Android HTTP架構