安卓開發學習心得-------Http訪問時保持同一Session
阿新 • • 發佈:2019-01-01
使用httpUrlConnection訪問後臺時,常常需要保持同一個session。而我們使用的瀏覽器會自動保持session的狀態,在安卓開發中則需要對httpUrlConnection的Header做適當的處理。
1.首先在第一次做訪問的時候我們可以獲取到一個叫Cookie-set的Header,而他的第一個部分則是我們需要的sessionId,一般是在登陸功能下。
//獲取輸出流
OutputStream os = urlConnection.getOutputStream();
os.write(data.getBytes ());
os.flush();
//獲取set-cookie
String cookieval = urlConnection.getHeaderField("set-cookie");
String sessionid="";
if(cookieval != null) {
//獲取sessionId
sessionid = cookieval.substring(0, cookieval.indexOf(";"));
}
將session儲存在我們的靜態常量中,就可以方便後面的網路訪問了。
2.在後面的網路訪問中放入sessionId
urlConnection.setRequestProperty("cookie", sessionId);//sessionId
這樣設定即可