`

HttpCliet 4.0 各种应用-post get https 登录

阅读更多
1.拳头之Get/Post
拳头是最基本的一重武器,也是最重要的,好比练武之人必须先扎稳马步。


java 代码

HttpClient httpclient=new HttpClient();//创建一个客户端,类似打开一个浏览器  
GetMethod getMethod=new GetMethod("http://www.blablabla.com");//创建一个get方法,类似在浏览器地址栏中输入一个地址  
int statusCode=httpclient.executeMethod(getMethod);//回车——出拳!  
System.out.println("response=" + getMethod.getResponseBodyAsString());//察看拳头命中情况,可以获得的东西还有很多,比如head, cookies等等  
getMethod.releaseConnection();//释放,记得收拳哦  


2.孔雀翎之支持https

如何支持https?

java 代码

static{  
    Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443);  
    Protocol.registerProtocol("https", easyhttps);  
}  

在执行具体的http method之前,暗中将https协议注册一把,如孔雀翎暗藏玄机,毙敌于无形。记住,官方的binary发行版本没有ssl的contribute包,方法一是下载源代码版本来打造你的孔雀翎。

3.多情环之cookies
常道人老多情,其实是记忆太多,所以情之所至,正如cookies甜心,无论你走到那,总把你牵挂:

java 代码

HttpClient httpclient=new HttpClient();  
httpclient.getParams().setCookiePolicy(CookiePolicy.RFC_2109);//RFC_2109是支持较普遍的一个,还有其他cookie协议  
HttpState initialState = new HttpState();  
Cookie cookie=new Cookie();  
cookie.setDomain("www.balblabla.com");  
cookie.setPath("/");  
cookie.setName("多情环");  
cookie.setValue("多情即无情");  
initialState.addCookie(cookie);  
httpclient.setState(initialState);  
...  


4.离别钩之解构cookies
多情环的反面即离别钩,钩出,敌之身体某个部件即要与身体别离,端的是无情:

java 代码

...//执行了某些get/post方法后  
Cookie[] cookies = httpclient.getState().getCookies();  
System.out.println("Present cookies: ");  
for (int i = 0; i < cookies.length; i++) {//循环结构零部件  
    System.out.println(" - " + cookies[i].toExternalForm());  
    System.out.println(" - domain=" + cookies[i].getDomain());  
    System.out.println(" - path=" + cookies[i].getPath());  
    ...            
}  


5.霸王抢之post参数
枪,长兵器之王,诸多名将均使一杆或金或银命名的名枪,比如岳飞。post方法在提交参数对时,犹如灵蛇出洞:

java 代码

PostMethod postMethod = new PostMethod("http://www.saybot.com/postme");  
NameValuePair[] postData = new NameValuePair[2];  
postData[0] = new NameValuePair("武器", "枪");  
postData[1] = new NameValuePair("什么枪", "神枪");  
postMethod.addParameters(postData);  
...//出枪吧  


6.七星碧玉刀之支持代理(proxy)
代理,非常重要,尤其在局域网横行的年头,没有代理,你在公司上不了QQ,没有代理,google不了网页快照,代理之威,可比七星碧玉刀,无刀,在局域网和开发当中,一切白搭:

java 代码

HttpClient httpclient=new HttpClient();  
httpClient.getHostConfiguration().setProxy("192.168.0.1", 9527);  
httpClient.getParams().setAuthenticationPreemptive(true);//重要!!!告诉httpclient,使用抢先认证,否则你会收到“你没有资格”的恶果  
/* 
  这一步也至关重要,MyProxyCredentialsProvider实现了org.apache.commons.httpclient.auth.CredentialsProvider接口, 
  返回代理的credential(username/password)*/  
httpClient.getParams().setParameter(CredentialsProvider.PROVIDER, new MyProxyCredentialsProvider());  
httpClient.getState().setProxyCredentials(  
    new AuthScope("192.168.0.1",  
        AuthScope.ANY_PORT, //任意端口哦,可要小心  
        AuthScope.ANY_REALM),//任意域哦,可要小心  
new UsernamePasswordCredentials("username",//proxy的用户名  
                        "password"));//proxy的密码  

...

7.长生剑之天下第一
看httpclient的官方文档:jakarta.apache.org/commons/httpclient/userguide.html
看Hilton网友写的小葵花宝典笔记:www.cnjm.net/tech/article1155.html
通读后,你会有种拔剑四顾心茫然的高手感觉。
分享到:
评论
1 楼 ganky 2011-01-31  

相关推荐

    httpcomponents-client-4.0-bin-with-dependencies.zip

    在这个"**httpcomponents-client-4.0-bin-with-dependencies.zip**"压缩包中,包含了HttpClient 4.0版本以及其依赖项,使得开发者可以直接在项目中使用,无需单独管理依赖。 一、HttpClient简介 HttpClient是Apache...

    CRM4.0中Plug-In使用研究文档

    在CRM4.0中,Plug-In需要在CRM组织服务中注册,并选择一个执行阶段,如Pre-Validation、Pre-Operation或Post-Operation。每个阶段对应业务流程的不同时间点,确保了代码的正确执行顺序。同时,每个Plug-In都有其...

    android基础 - POST GET

    在Android开发中,POST和GET是两种主要的HTTP请求方法,用于从服务器获取数据或向服务器发送数据。...通过理解这些基本概念和实践,开发者可以更好地在Android应用中利用POST和GET方法与服务器进行数据交互。

    LS-PrePost4.0破解版

    LS-PrePost4.0破解版软件,可用,另已上传相应的视频教程

    LS-PrePost v4.0 基础操作教程

    1. **材料属性**:在LS-PrePost中,用户可以定义各种材料属性,如弹性模量、泊松比、密度等,以反映实际物理特性。 2. **边界条件**:定义边界条件是有限元分析的关键步骤,包括固定约束、滑移边界、荷载施加等。...

    用httpclient-4.0-alpha2 打造基于http协议的网站分析器

    在IT行业中,网络编程是不可或缺的一部分,而HTTP协议作为互联网通信的基础,被广泛应用于各种应用场景。本项目利用Apache HttpClient库的4.0-alpha2版本,旨在构建一个基于HTTP协议的网站分析器,以便对网页内容...

    httpcomponents-client-4.0-beta2-bin.zip

    在我们讨论的这个版本——"httpcomponents-client-4.0-beta2"中,我们将深入探讨它的重要特性、用法以及在实际开发中的应用。 HttpClient 4.0引入了许多改进,尤其是在性能和可配置性方面。Beta2版本虽未正式发布,...

    GET-AND-POST.rar_ post CSharp _C# GET POST_CSharp post_POST_pos

    综上所述,“GET-AND-POST.rar”资源可能包含了如何在C#应用程序中使用GET和POST方法进行网络通信的示例代码,特别是如何处理和维护cookie状态,这对于开发涉及用户登录、购物车等功能的Web应用程序至关重要。...

    jquery-get-post-load 方法

    本文将详细介绍 jQuery 中 GET、POST 和 LOAD 方法的使用方法及其应用场景。 #### 二、GET方法 GET 方法通常用于从服务器请求数据,而不会更改服务器上的数据。它是一种安全的方法,因为数据是通过 URL 传递的,...

    DelphiXE10.3封装http-get-post成dll及调用

    - 在DLL项目的实现部分,实现这两个函数,使用`IdHTTP`组件进行GET和POST操作。 3. 导出函数: - 在`unit`的`interface`部分,使用`exports`关键字导出这两个函数,以便在其他项目中调用。 4. 构建DLL: - 保存...

    Python库 | ambra_sdk-3.20.4.0.post1-py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:ambra_sdk-3.20.4.0.post1-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    C++ 实现 HTTP HTTPS POST GET(包含curl版本和winhttp两种实现)

    C++ 实现 HTTP HTTPS POST GET(包含curl版本和winhttp两种实现)。 玩过抓包,网络协议分析的朋友肯定都知道http https post get,web端和用户的交互主要是通过post get完成的。 我这里有两种实现: 1:libcurl实现的...

    get、post登录

    本资源"get、post登录"着重介绍了如何利用这两种方法进行登录功能的实现。 1. GET方法: GET是最基础的HTTP方法,通常用于获取资源。在登录场景中,当用户输入用户名和密码后,这些信息会被编码成URL的一部分发送到...

    CRM4.0中后台Plug-In使用培训手册

    6. **事件框架**:CRM4.0的统一事件框架使得Plug-In能够在多个阶段介入,如Pre-Validation、Pre-Operation和Post-Operation等,这样可以在不同时间点执行相应的逻辑。 7. **多租户支持**:Plug-In能够适应多租户...

    资源fastjson-get-post.zip

    首先,让我们深入理解GET和POST方法。GET是HTTP协议中最常见的请求方法,用于从服务器获取资源。请求参数通常附加在URL后面,限制了请求长度,并且这些参数对浏览器历史和缓存可见。而POST方法则用于向服务器发送...

    Android客户端与服务端交互-客户端GET方式登录和客户端POST方式查询

    在Android应用开发中,客户端和服务端的交互是至关重要的,特别是涉及到用户登录和数据查询时。本篇将详细探讨客户端(Android)通过GET和POST方式与服务端进行数据交互的知识点。 首先,我们要理解GET和POST两种...

    JSP-GET-POST传递的乱码问题

    然而,在处理中文参数时,尤其是通过GET和POST方法传递时,经常会出现乱码问题。这通常是由于字符编码不一致或者处理不当导致的。以下是对这一问题的详细解析: 首先,我们需要理解字符编码的基本概念。在Web中,...

    GET请求https,post请求https

    本篇文章将详细讨论GET和POST请求在HTTPS环境下的工作原理和应用场景。 首先,GET请求是HTTP协议中最常见的请求方法之一,用于从服务器获取资源。在HTTPS环境下,GET请求的工作流程如下: 1. 客户端(浏览器)与...

Global site tag (gtag.js) - Google Analytics