关于请求中的cookie

starishere 2018-03-05 05:18:15
现在要爬取一个网页,需要先登录,但是登录时候有这样一个验证csrftoken=6X37MnXP3JKHKz9LdgLzkQ4OdF8YdMhG;
在浏览器调试发现这个是在请求主页时在请求头中的Cookie里,现在用HttpClient获取不到请求中的Cookie,请问该怎么解决,附上部分代码

CookieStore cookieStore = new BasicCookieStore();
httpClient = HttpClients.custom().setDefaultCookieStore(cookieStore).build();
String gurl = "https://www.igxe.cn";
httpGet = new HttpGet(gurl);
httpGet.setHeader("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299");
httpGet.setHeader("Accept","text/html, application/xhtml+xml, image/jxr, */*");
httpGet.setHeader("Accept-Encoding","gzip, deflate, br");
httpGet.setHeader("Accept-Language","zh-CN");
HttpClientContext context = HttpClientContext.create();
CloseableHttpResponse responseg = httpClient.execute(httpGet,context);
System.out.println(context.getRequest().getHeaders("Cookie").length);
...全文
326 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
oyljerry 2018-03-05
  • 打赏
  • 举报
回复
服务器一般登录的时候会返回一个cookie作为用户标示。后面请求就用这个cookie
starishere 2018-03-05
  • 打赏
  • 举报
回复
谢谢,可以结贴了
starishere 2018-03-05
  • 打赏
  • 举报
回复
引用 1 楼 wcwtitxu 的回复:
先请求 https://www.igxe.cn/login/ 服务器会在响应头中下发 token
完美解决。。
wcwtitxu 2018-03-05
  • 打赏
  • 举报
回复
responseg.getHeader('Set-Cookie')
wcwtitxu 2018-03-05
  • 打赏
  • 举报
回复

先请求 https://www.igxe.cn/login/

服务器会在响应头中下发 token

81,111

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧