2010-09-24 70 views
2

我需要從我的android應用程序中的REST Web服務中提取數據。 Web服務需要認證。
我需要先調用一個登錄方法,它將返回一個authToken和JSESSIONID作爲響應頭的一部分。我需要將這些項目傳回給每個請求。我目前使用:org.apache.http.impl.client.DefaultHttpClient.DefaultHttpClient()來調用登錄方法。我可以看到authToken和JSESSIONID正在響應頭中返回。 是否有任何現有的工具或類可能提供某種管理功能,我可以輕鬆地與我的Android應用程序集成?如何從Android應用程序對REST Web服務進行身份驗證?

謝謝!

回答

1

您可以使用SharedPreferences將值存儲爲鍵/值對,然後創建一些便利方法將這些值附加到您的Web請求。一旦你得到的響應,這些值將它們存儲着,

SharedPreferences apiVals = getSharedPreferences("apiVals", MODE_PRIVATE); 
apivals.edit() 
     .putString("authToken", authToken) 
     .putString("jSessionId", jSessionId) 
     .commit(); 

,並檢索它們,

SharedPreferences apiVals = getSharedPreferences("apiVals", MODE_PRIVATE); 
String authToken = apiVals.getString("authToken", null); 

退房http://developer.android.com/reference/android/content/SharedPreferences.html以獲取更多信息。

0

您可能還想查看SimpleSyncAdapter示例項目(包含在Android SDK中)以瞭解如何使用Android的客戶經理處理認證和憑證存儲。我相信這就是您的用例意在在Android中支持的方式。

相關問題