httpclient模拟登陆具体实现(使用js设置cookie)


Posted in Javascript onDecember 11, 2013

httpclient模拟登陆(使用js设置cookie)

<html> 
<meta http-equiv='Content-Type' content='text/html; charset=gb2312'> 
<link rel=stylesheet type=text/css href='/bbs.css'> 
<script>document.cookie='utmpnum=51;path=/;domain=.' + window.location.host</script> 
<script>document.cookie='utmpkey=20154732;path=/;domain=.' + window.location.host</script> 
<script>document.cookie='utmpuserid=yay;path=/;domain=.' + window.location.host</script> 
<meta http-equiv='Refresh' content='0; url=/firstpage.php'>

h4ttpclient 4.3:

最简单的方法就是通过得到的cookie定制一个httpclient,根据上面的例子,方法如下:

CookieStore cookieStore = new BasicCookieStore(); for (int i = 0; i < 3; i++) { 
String name; 
String value; 
int flag=s.indexOf("document.cookie"); 
s=s.substring(flag+17); 
flag=s.indexOf('='); 
name=s.substring(0, flag); 
value=s.substring(flag+1, s.indexOf(';')); 
BasicClientCookie cookie = new BasicClientCookie(name, 
value); 
cookie.setVersion(0); 
cookie.setDomain(".www.zju88.org"); //这个网址对应的是<span style="font-family: Arial, Helvetica, sans-serif;">window.location.host的返回值</span> 
cookie.setPath("/"); 
cookieStore.addCookie(cookie); 
} 
// Set the store 
CloseableHttpClient httpclient = HttpClients.custom() 
.setDefaultCookieStore(cookieStore) 
.build();

android:

我找了半天也没找到上面方法对应的API,只能在每次访问前加cookie了

String cookie=""; 
for (int i = 0; i < 3; i++) { 
String name; 
String value; 
int flag=s.indexOf("document.cookie"); 
s=s.substring(flag+17); 
flag=s.indexOf('='); 
name=s.substring(0, flag); 
value=s.substring(flag+1, s.indexOf(';')); 
cookie +=name +"="+value; 
if(i!=2) 
cookie+=";"; 
} /* 
* 每次访问网络 
*/ 
HttpGet httpget = new HttpGet(url); 
httpget.addHeader("Cookie",cookie); 
//如果httpclient中已经有cookie可能需要设置httpclient的cookie策略,具体可查官方API (: 
HttpResponse response = httpclient.execute(httpget);

ps:如果是用java SE,也可以使用htmlunit类,它会执行js。
Javascript 相关文章推荐
javascript window.opener的用法分析
Apr 07 Javascript
js实现checkbox全选、不选与反选的方法
Feb 09 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
May 20 Javascript
js实现不提交表单获取单选按钮值的方法
Aug 21 Javascript
JS实现字符串转日期并比较大小实例分析
Dec 09 Javascript
详解BootStrap中Affix控件的使用及保持布局的美观的方法
Jul 08 Javascript
JavaScript编码风格指南(中文版)
Aug 26 Javascript
Vuejs第六篇之Vuejs与form元素实例解析
Sep 05 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
Jul 18 Javascript
微信小程序模板template简单用法示例
Dec 04 Javascript
详解在React项目中安装并使用Less(用法总结)
Mar 18 Javascript
vue 解除鼠标的监听事件的方法
Nov 13 Javascript
js判断客户端是iOS还是Android等移动终端的方法
Dec 11 #Javascript
js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)
Dec 11 #Javascript
按下Enter焦点移至下一个控件的实现js代码
Dec 11 #Javascript
JS中window.open全屏命令解析及使用示例
Dec 11 #Javascript
js的匿名函数使用介绍
Dec 11 #Javascript
jquery ajax jsonp跨域调用实例代码
Dec 11 #Javascript
JavaScript Math.ceil() 函数使用介绍
Dec 11 #Javascript
You might like
JavaScript 数组循环引起的思考
2010/01/01 Javascript
jQuery学习笔记之jQuery选择器的使用
2010/12/22 Javascript
基于jquery的鼠标拖动效果代码
2012/05/30 Javascript
前台js改变Session的值(用ajax实现)
2012/12/28 Javascript
关于jQuery判断元素是否存在的问题示例探讨
2014/07/21 Javascript
JavaScript实现继承的4种方法总结
2014/10/16 Javascript
JavaScript中的逻辑判断符&amp;&amp;、||与!介绍
2014/12/31 Javascript
JavaScript获取伪元素(Pseudo-Element)属性的方法技巧
2015/03/13 Javascript
JavaScript实现Flash炫光波动特效
2015/05/14 Javascript
JS获取数组最大值、最小值及长度的方法
2015/11/24 Javascript
分步解析JavaScript实现tab选项卡自动切换功能
2016/01/25 Javascript
JavaScript修改作用域外变量的方法
2016/03/25 Javascript
jquery radio的取值_radio的选中_radio的重置方法
2016/09/20 Javascript
解决同一页面中两个iframe互相调用jquery,js函数的方法
2016/12/12 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
node删除、复制文件或文件夹示例代码
2019/08/13 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
解决vue组件中click事件失效的问题
2019/11/09 Javascript
JQuery插件tablesorter表格排序实现过程解析
2020/05/28 jQuery
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
python中OrderedDict的使用方法详解
2017/05/05 Python
python中正则表达式 re.findall 用法
2018/10/23 Python
在PyCharm中三步完成PyPy解释器的配置的方法
2018/10/29 Python
基于Tensorflow的MNIST手写数字识别分类
2020/06/17 Python
python 代码运行时间获取方式详解
2020/09/18 Python
10款最佳Python开发工具推荐,每一款都是神器
2020/10/15 Python
西班牙英格列斯百货官网:El Corte Inglés
2016/09/25 全球购物
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
2014/01/19 面试题
运动会获奖感言
2014/02/11 职场文书
药品营销策划方案
2014/06/15 职场文书
业绩倒数第一的检讨书
2014/09/24 职场文书
2015年教研员工作总结
2015/05/26 职场文书
新农村建设指导员工作总结
2015/08/13 职场文书
关于教师节的广播稿
2015/08/19 职场文书
创业计划书之服装
2019/10/07 职场文书
python使用openpyxl库读写Excel表格的方法(增删改查操作)
2021/05/02 Python