1.1.1 HTTP request
所有的HTTP请求都包含了method name,请求URI以及协议版本。
HttpClient支持所有定义在HTTP1.1规范中的HTTP method:GET、POST、PUT、DELETE、TRACE和OPTIONS。每种method类型对应一个特别的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete和HttpOptions。
Request-URI是统一资源定位符,识别应用到请求的资源。HTTP请求URI包含了协议,主机名,端口号,资源路径,查询,或者可选的片段。
HttpClient提供了大量的工具方法简化请求URI的创建和修改。
URI能被集成到程序中:
输出〉
http://www.google.com/search?q=httpclient&btnG=Google+Search&aq=f&oq=
查询字符串也能从不同的参数生成:
输出〉
http://www.google.com/search?q=httpclient&btnG=Google+Search&aq=f&oq=
所有的HTTP请求都包含了method name,请求URI以及协议版本。
HttpClient支持所有定义在HTTP1.1规范中的HTTP method:GET、POST、PUT、DELETE、TRACE和OPTIONS。每种method类型对应一个特别的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete和HttpOptions。
Request-URI是统一资源定位符,识别应用到请求的资源。HTTP请求URI包含了协议,主机名,端口号,资源路径,查询,或者可选的片段。
HttpGet httpGet = new HttpGet("http://www.google.com");
HttpClient提供了大量的工具方法简化请求URI的创建和修改。
URI能被集成到程序中:
URI uri = URIUtils.createURI("http", "www.google.com", -1, "/search", "q=httpclient&btnG=Google+Search&aq=f&oq=", null);
HttpGet httpGet = new HttpGet(uri);
System.out.println(httpGet.getURI());
输出〉
http://www.google.com/search?q=httpclient&btnG=Google+Search&aq=f&oq=
查询字符串也能从不同的参数生成:
List<NameValuePair> qparams = new ArrayList<NameValuePair>();
qparams.add(new BasicNameValuePair("q", "httpclient"));
qparams.add(new BasicNameValuePair("btnG", "Google Search"));
qparams.add(new BasicNameValuePair("aq", "f"));
qparams.add(new BasicNameValuePair("oq", null));
URI uri = URIUtils.createURI("http", "www.google.com", -1, "/search", URLEncodedUtils.format(qparams, "UTF-8"), null);
HttpGet httpget = new HttpGet(uri);
System.out.println(httpget.getURI());
输出〉
http://www.google.com/search?q=httpclient&btnG=Google+Search&aq=f&oq=