通过HttpURLConnection模拟浏览器提交请求,先后提交三次请求到服务器,要求三次请求服务器端共用一个session. 具体来讲就是,第一次请求,服务器端会建立一个session对象; 第二次请求,服务器端会取出第一次建立的session对象,并设值进去;第三次请求同样要取出第一次建立的session对象。 我现在通过HttpURLConnection模拟浏览器提交请求没有问题,但是服务器端每次取出的session对象不同(sessionid 不同),所以无法达到预期效果。 求教各位高数该如何做,使用cookie吗? 请给出代码,谢谢!
不知道是不是可以这样第一次请求后
cookie=urlConn.getHeaderField("Set-Cookie");
第二次请求前
urlConn.addRequestProperty("Cookie",cookie);
第一次之后:
String cookie = conn.getHeaderField("Set-Cookie");
if (cookie != null) {
int semicolon = cookie.indexOf(';');
sessionID = cookie.substring(0, semicolon);第二次之前:
if (sessionID != null && addr != 0)
conn.setRequestProperty("Cookie", sessionID);