zoukankan      html  css  js  c++  java
  • 从response.header中提取cookie,在request里添加cookie

    //        List<String> resp = new ArrayList<String>();  
    //        HeaderIterator headers = response.headerIterator("Set-Cookie");
    //      while(headers.hasNext()){
    //        resp.add(headers.next().toString().replace("Set-Cookie: ", ""));
    //    }


    //                    headers=response.getAllHeaders();
    //                for (Header header : headers) {
    //                    System.out.println("CorpSubmit,header--- " + header.getName()
    //                      + ": " + header.getValue());
    //                }

    cookiek另一种添加到request中的方式,会出现timeout错误

    Map<String, Map<String, String>> cookies = null;
    cookies = site.getAllCookies();//.getCookies();
    HttpContext localContext = new BasicHttpContext();
    getSiteCookies(localContext, cookies);
    logger.info("localContext:::::"+cookies);
    httpResponse = getHttpClient(site).execute(httpUriRequest, localContext);
    cookieStore = ((AbstractHttpClient) getHttpClient(site)).getCookieStore();
    List<Cookie> cookies = cookieStore.getCookies();
    for (Cookie ck : cookies){
    //site.addCookie(ck);
    logger.info(ck.toString());
    }

    private void getSiteCookies(HttpContext localContext, Map<String, Map<String, String>> cookies){
    CookieStore cookieStore = new BasicCookieStore();
    for (Entry<String, Map<String, String>> entry : cookies.entrySet()) {
    String domain=entry.getKey();
    Map<String, String> cks= entry.getValue();
    for (Map.Entry<String, String> v : cks.entrySet()) {
    String name = v.getKey();
    String value = v.getValue();
    System.out.println("get from site::::::::::::"+ domain + ", " + name + ", " + value);
    BasicClientCookie cookie = new BasicClientCookie(name, value);
    cookie.setDomain(domain);
    cookieStore.addCookie(cookie);
    localContext.setAttribute(HttpClientContext.COOKIE_STORE, cookieStore);
    break;
    }

    }

  • 相关阅读:
    Java学习--list,set,Map接口使用
    Java学习--java中的集合框架、Collection接口、list接口
    Java学习--使用 Math 类操作数据
    Java学习--Calendar 类的应用
    Java学习--使用 Date 和 SimpleDateFormat 类表示时间
    Java学习--Java 中基本类型和字符串之间的转换
    Java学习网址
    Java开发学习--Java 中基本类型和包装类之间的转换
    Java学习--Java 中的包装类
    builtroot make menuconfig流程
  • 原文地址:https://www.cnblogs.com/timssd/p/5340857.html
Copyright © 2011-2022 走看看