热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

java模拟登陆知乎,获取的cookie和浏览器登陆的不一致

java用httpclient模拟登陆知乎,获取的cookie和浏览器登陆的不一致

java 用httpclient模拟登陆知乎,获取的COOKIE和浏览器登陆的不一致



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
    public static String post(String url, NameValuePair[] loginInfo) throws Exception {

        HttpClient httpClient = new HttpClient();

        // 模拟登陆,按实际服务器端要求选用Post请求方式

        PostMethod postMethod = new PostMethod(url);

        setHead(postMethod);

        setBody(postMethod, loginInfo);

        httpClient.getParams().setCOOKIEPolicy(COOKIEPolicy.BROWSER_COMPATIBILITY);

        httpClient.executeMethod(postMethod);

        // 获得登陆后的 COOKIE

        COOKIE[] COOKIEs = httpClient.getState().getCOOKIEs();

        StringBuffer COOKIE = new StringBuffer();

        for (COOKIE c : COOKIEs) {

            COOKIE.append(c.toString() + ";");

        }

        return COOKIE.toString();

    }

   

    private static void setHead(HttpMethod httpMethod, Map map) {

        //判断是否传入自定义消息头

        if (null != map && map.size() > 0) {

            map.keySet().forEach(key -> httpMethod.setRequestHeader(key, map.get(key)));

        }

        //公共消息头(不同的网站消息头内容不一致)

        httpMethod.setRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36");

        httpMethod.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

        httpMethod.setRequestHeader("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");

    }

   

    private static void setBody(PostMethod postMethod, NameValuePair[] loginInfo) {

        postMethod.setRequestBody(loginInfo);

    }

httpclient获取的COOKIE:
aliyungf_tc=AQ#D9s3S/D6A0AQEfsc/I8r3DFSet9;l_n_c=1;q_c1=6691d50c82ae42789d444a4131ef4e24|1505186310000|1505186310000;r_cap_id=NjY5MzFmZjIyY2FkNDFlMTg4NmYxZDI1NzlmYjFjNTY=|1505186310|6d176ad90ba8868dbb8f62aaff1dd3d95ab71df9;cap_id=MjU1ZmVjZjBhYzVkNGRjZDk2ZDFhOTY4Nzc1MGQ3YmI=|1505186310|5800cbe49135a68d11e2416f182c7540586d60c2;l_cap_id=NWY2OWJiNzgxZGE0NDg0OTg3NDk2MjE4YjNiMDI2MDU=|1505186310|6cb0b38aee885d53bc28bbf5434be8fb93044535;n_c=1;

浏览器登陆获取的COOKIE:
_zap=8bee571a-7927-46b8-9a1e-561d437c80a5; d_c0="#CmF3qRQyPTobzdgXafIBJ9zFDhI22laY=|1503630379"; q_c1=a0eebeb7f0634e7792282bf1bceac306|1503887510000|1494232687000; q_c1=a0eebeb7f0634e7792282bf1bceac306|1504688356000|1494232687000; aliyungf_tc=AQ#LNUi2SIIQ8AQEfsc5RHw3SM7uUs; infinity_uid="2|1:0|10:1505184034|12:infinity_uid|24:ODg2OTY0MzkwMDM1ODY1NjAw|dd6fd2c07dd0fb3fb1ad07aca4ed378470a6420a60fb0d8bbaa257c2d53a84f0"; _xsrf=28666d5b-5c8c-4d5f-875e-ccbc5d88252c; r_cap_id="MjcxYWI4ODk2OTE0NDRlZTg4NzY4NDgzMzA3OWJiMzk=|1505184653|5876f662ff54aa1cbc3b7b61e51a353b96e75c29"; __utma=51854390.1046329935.1505184717.1505184717.1505184717.1; __utmb=51854390.0.10.1505184717; __utmc=51854390; __utmz=51854390.1505184717.1.1.utmcsr=zhihu.com|utmccn=(referral)|utmcmd=referral|utmcct=/; __utmv=51854390.000--|3=entry_date=20170508=1; l_cap_id="OWQyOGZmYTk2ODk2NGYzMmFkNmU3NDg5ZDM4YzdhZjU=|1505185164|92ea8fe79847c654b84acd95dd1caf84c3106f26"; z_c0=Mi4xUUpYUkJRQUFBQUFBQUFLWVhlcEZEQmNBQUFCaEFsVk5ydHJlV1FBVFhIYnVHdm5OLVFjcTNxOU5yYUtfamVEUGxB|1505185198|5c5904bdadce56814173771ba598a851181ea19e; unlock_ticket="QUZCQ2tyZ2dTd3dYQUFBQVlRSlZUYlpVdDFuVVUyZWlza1N2ajhwVnJPbGtxcm1MdWliVWZnPT0=|1505185198|af0cb75a0b7e76fb83f13ce25f4066eca68227d5"; cap_id="NjI2ZmYxZmIwMmU3NDliNzllZTc0MDI3YThkOWRhOTU=|1505185198|98d1814bdebc6d2277c50185475d8aea2c03ca25"



这是为什么?求大神们解答


   



推荐阅读
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • Android实战——jsoup实现网络爬虫,糗事百科项目的起步
    本文介绍了Android实战中使用jsoup实现网络爬虫的方法,以糗事百科项目为例。对于初学者来说,数据源的缺乏是做项目的最大烦恼之一。本文讲述了如何使用网络爬虫获取数据,并以糗事百科作为练手项目。同时,提到了使用jsoup需要结合前端基础知识,以及如果学过JS的话可以更轻松地使用该框架。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • 找到JDK下载URL当然去官网找了。目前最新的1.8的下载URL(RPM)如下:http:download.oracle.comotn-pubjavajdk8u161-b122f3 ... [详细]
  • Java大文件HTTP断点续传到服务器该怎么做?
    最近由于笔者所在的研发集团产品需要,需要支持高性能的大文件http上传,并且要求支持http断点续传。这里在简要归纳一下,方便记忆 ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • 开发笔记:Java是如何读取和写入浏览器Cookies的
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Java是如何读取和写入浏览器Cookies的相关的知识,希望对你有一定的参考价值。首先我 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • 【爬虫】关于企业信用信息公示系统加速乐最新反爬虫机制
    ( ̄▽ ̄)~又得半夜修仙了,作为一个爬虫小白,花了3天时间写好的程序,才跑了一个月目标网站就更新了,是有点悲催,还是要只有一天的时间重构。升级后网站的层次结构并没有太多变化,表面上 ... [详细]
  • adfs是什么_培训与开发的概念
    adfs是什么_培训与开发的概念(如您转载本文,必须标明本文作者及出处。如有任何疑问请与我联系me@nap7.com)ADFS相关开发技术的中文资料相对匮乏,之前在弄这个东西的时候 ... [详细]
  • 渗透测试基础bypass绕过阻挡我们的WAF(下)
    渗透测试基础-bypass ... [详细]
  • SQLiLabs靶场的介绍、下载与安装
    介绍SQLi-Labs是一个专业的SQL注入练习平台下面的测试场景都支持GET和POST两种注入方式:1.报错注入(联合查询)1)字符型2)数字型2.报错注入(基于 ... [详细]
author-avatar
2364118915_86406b_479
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有