java url设置cookie_如何在HttpURLConnection设置Cookie(Finn_ZengYuan博客)

1 /******2 * Created by Finn on 2018/11/26.3 * Author Finn4 */

5

6 public classConnHttp {7 public static final String DEF_CHATSET = "UTF-8";8 public static final int DEF_CONN_TIMEOUT = 30000;9 public static final int DEF_READ_TIMEOUT = 30000;10

11 public static String userAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";12

13 public static String COOKIE = "";14

15 //申请KEY

16 public static final String APPKEY ="869662030640897";17 //申请页数

18 public static final int APPYE = 1;19

20 //1.事件列表

21 public static String getRequest1(Context context, inttepy){22

23 String result = null;24 //"http://113.107.244.182:3303/Home/Pub/getHistoryDeviceInfo?imei=869662030640897"

25 String url ="http://113.107.244.182:3303/Home/Pub/getHistoryDeviceInfo";//请求接口地址

26 Map params = new HashMap();//请求参数

27 if(tepy == 1){//.获得验证码http://113.107.244.182:3303/Home/Api/getValidateMessage

28 url ="http://113.107.244.182:3303/Home/Api/getValidateMessage";29 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDRegLock",""));30 }else if(tepy == 2){//注册:http://113.107.244.182:3303/Home/Api/register

31 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDRegLock",""));32 params.put("pswd",ToolsSharedPrefer.getStringSharedPreferences(context,"TDNBLockPsw",""));33 params.put("code",ToolsSharedPrefer.getStringSharedPreferences(context,"TDFinnCode",""));34

35 url ="http://113.107.244.182:3303/Home/Api/register";36 }else if(tepy == 3){//登陆:http://113.107.244.182:3303/Home/Api/login

37 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDFinnLock",""));38 params.put("pswd",ToolsSharedPrefer.getStringSharedPreferences(context,"TDNBLockPsw",""));39 url ="http://113.107.244.182:3303/Home/Api/login";40 }else if(tepy == 4){//找回密码http://113.107.244.182:3303/Home/Api/findpsw

41 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDRegLock",""));42 params.put("code",ToolsSharedPrefer.getStringSharedPreferences(context,"TDFinnCode",""));43 params.put("npswd",ToolsSharedPrefer.getStringSharedPreferences(context,"TDNBNewPsw",""));44 url ="http://113.107.244.182:3303/Home/Api/findpsw";45 }else if(tepy == 5){//修改密码http://113.107.244.182:3303/Home/Api/changepsw

46 params.put("uuid",ToolsSharedPrefer.getStringSharedPreferences(context,"TDuuidLock",""));47 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDFinnLock",""));48 params.put("pswd",ToolsSharedPrefer.getStringSharedPreferences(context,"TDNBLockPriPsw",""));49 params.put("npswd",ToolsSharedPrefer.getStringSharedPreferences(context,"TDNBNewPsw",""));50 url ="http://113.107.244.182:3303/Home/Api/changepsw";51 }else if(tepy == 6){//退出登陆http://113.107.244.182:3303/Home/Api/loginout

52 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDFinnLock",""));53 url ="http://113.107.244.182:3303/Home/Api/loginout";54 }else if(tepy == 7){//.设备信息http://113.107.244.182:3303/Home/Api/deviceinfo

55 params.put("uuid",ToolsSharedPrefer.getStringSharedPreferences(context,"TDuuidLock",""));56 params.put("imei",ToolsSharedPrefer.getStringSharedPreferences(context,"TDIMEILock",""));57 params.put("username",ToolsSharedPrefer.getStringSharedPreferences(context,"TDFinnLock",""));58 url ="http://113.107.244.182:3303/Home/Api/deviceinfo";59 }60 try{61 result = net(context,url, params, "GET",tepy);62 ToolsLog.LogE("COOKIE==",COOKIE);63 if(tepy == 1 && tepy == 2 && tepy == 3) {64 ToolsSharedPrefer.setSharedPreferencesAll(context, "SETCOOKIE", COOKIE);65 }66 ToolsLog.LogE("返回结果",result);67 //JSONObject object = JSONObject.parseObject(result);68 //if(object.getInteger("state")== 0){69 //ToolsLog.LogE("GET请求成功",object.get("state")+"");70 //}else{71 //System.out.println(object.get("error_code")+":"+object.get("reason"));72 //}

73 } catch(Exception e) {74 e.printStackTrace();75 }finally{76 params.clear();77 }78 returnresult;79 }80

81 /**

82 *@paramstrUrl 请求地址83 *@paramparams 请求参数84 *@parammethod 请求方法85 *@return网络请求字符串86 *@throwsException87 */

88 public static String net(Context context,String strUrl, Map params,String method,int cookie) throwsException {89

90 HttpURLConnection conn = null;91 BufferedReader reader = null;92 String rs = null;93 String sessionid = "";94

95 try{96

97 StringBuilder sb = newStringBuilder();98 if(method==null || method.equals("GET")){99 strUrl = strUrl+"?"+urlencode(params);100 ToolsLog.LogE("GET请求数据",strUrl);101 }102 URL url = newURL(strUrl);103 conn =(HttpURLConnection) url.openConnection();104 ToolsLog.LogE("------",105 ToolsSharedPrefer.getStringSharedPreferences(context, "SETCOOKIE", "")106 + "----" +sessionid);107 if(!"".equals(ToolsSharedPrefer.getStringSharedPreferences(context,"SETCOOKIE",""))) {108 conn.setRequestProperty("Cookie", ToolsSharedPrefer.getStringSharedPreferences(context, "SETCOOKIE", ""));109 }110 conn.setRequestProperty("User-agent", userAgent);111

112 //sessionid值格式:JSESSIONID=AD5F5C9EEB16C71EC3725DBF209F6178,是键值对,不是单指值

113 if(method==null || method.equals("GET")){114 conn.setRequestMethod("GET");115 conn.setUseCaches(true);116 }else{117 conn.setRequestMethod("POST");118 conn.setDoOutput(true);119 }120

121 // //设置允许输入122 //conn.setDoInput(false);123

124 //设置请求中的媒体类型信息。125 //conn.setRequestProperty("Content-Type", "application/json");126 //设置客户端与服务连接类型127 //conn.addRequestProperty("Connection", "Keep-Alive");

128

129 conn.setConnectTimeout(DEF_CONN_TIMEOUT);130 conn.setReadTimeout(DEF_READ_TIMEOUT);131 conn.setInstanceFollowRedirects(false);132 ToolsLog.LogE("connect","11111111111---------"+conn.getResponseCode());133 conn.connect();134 //取得sessionid.

135 String cookieval = conn.getHeaderField("set-cookie");136 if(cookieval != null) {137 sessionid = cookieval.substring(0, cookieval.indexOf(";"));138 ToolsLog.LogE("cookieval",sessionid+"---------"+cookieval);139 if(!sessionid.equals("")) {140 COOKIE =sessionid;141 }142 }143

144

145 if (params!= null && method.equals("POST")) {146 try{147 DataOutputStream out = newDataOutputStream(conn.getOutputStream());148 out.writeBytes(urlencode(params));149 } catch(Exception e) {150 //TODO: handle exception

151 }152 }153 InputStream is =conn.getInputStream();154 reader = new BufferedReader(newInputStreamReader(is, DEF_CHATSET));155 String strRead = null;156 while ((strRead = reader.readLine()) != null) {157 sb.append(strRead);158 }159 rs =sb.toString();160 } catch(Exception e) {161 e.printStackTrace();162 } finally{163 if (reader != null) {164 reader.close();165 }166 if (conn != null) {167 conn.disconnect();168 }169 }170 returnrs;171 }172

173 //将map型转为请求参数型

174 public static String urlencode(Mapdata) {175 StringBuilder sb = newStringBuilder();176 for(Map.Entry i : data.entrySet()) {177 try{178 sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");179 } catch(UnsupportedEncodingException e) {180 e.printStackTrace();181 }182 }183 ToolsLog.LogE("请求数据",sb.toString());184 returnsb.toString();185 }186 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值