• HttpClient(4.3.5)


    An HTTP message can contain a number of headers describing properties of the message such as the content length, content type and so on. HttpClient provides methods to retrieve, add, remove and enumerate headers.

    HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, HttpStatus.SC_OK, "OK");
    response.addHeader("Set-Cookie", "c1=a; path=/; domain=localhost");
    response.addHeader("Set-Cookie", "c2=b; path="/", c3=c; domain="localhost"");
    Header h1 = response.getFirstHeader("Set-Cookie");
    System.out.println(h1);
    Header h2 = response.getLastHeader("Set-Cookie");
    System.out.println(h2);
    Header[] hs = response.getHeaders("Set-Cookie");
    System.out.println(hs.length);

    stdout >

    Set-Cookie: c1=a; path=/; domain=localhost
    Set-Cookie: c2=b; path="/", c3=c; domain="localhost"
    2

    The most efficient way to obtain all headers of a given type is by using the HeaderIterator interface.

    HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, HttpStatus.SC_OK, "OK");
    response.addHeader("Set-Cookie", "c1=a; path=/; domain=localhost");
    response.addHeader("Set-Cookie", "c2=b; path="/", c3=c; domain="localhost"");
    
    HeaderIterator it = response.headerIterator("Set-Cookie");
    while (it.hasNext()) {
        System.out.println(it.next());
    }

    stdout >

    Set-Cookie: c1=a; path=/; domain=localhost
    Set-Cookie: c2=b; path="/", c3=c; domain="localhost"

    It also provides convenience methods to parse HTTP messages into individual header elements.

    HttpResponse response = new BasicHttpResponse(HttpVersion.HTTP_1_1, HttpStatus.SC_OK, "OK");
    response.addHeader("Set-Cookie", "c1=a; path=/; domain=localhost");
    response.addHeader("Set-Cookie", "c2=b; path="/", c3=c; domain="localhost"");
    
    HeaderElementIterator it = new BasicHeaderElementIterator(response.headerIterator("Set-Cookie"));
    while (it.hasNext()) {
        HeaderElement elem = it.nextElement(); 
        System.out.println(elem.getName() + " = " + elem.getValue());
        NameValuePair[] params = elem.getParameters();
        for (int i = 0; i < params.length; i++) {
            System.out.println(" " + params[i]);
        }
    }

    stdout >

    c1 = a
    path=/
    domain=localhost
    c2 = b
    path=/
    c3 = c
    domain=localhost
  • 相关阅读:
    Java [leetcode 33]Search in Rotated Sorted Array
    JAVA方法和本地方法(转载)
    Java集合框架
    常用排序算法
    Java [leetcode 32]Longest Valid Parentheses
    四大组件的生命周期
    Android Service即四大组件总结
    Java [leetcode 31]Next Permutation
    android 组件设置屏幕大小
    MenuInflater用法
  • 原文地址:https://www.cnblogs.com/huey/p/5720662.html
Copyright © 2020-2023  润新知