HttpClient(dubbo)

一 定义

提供高效的, 最新的, 功能丰富的支持HTTP协议的客户端编程工具包

二 功能

 1 实现了所有HTTP的方法

 2 支持自动转向

 3 支持HTTPS协议

 4 支持代理服务器

三 基本功能

1 GET方法

   使用HttpClient需要以下6个步骤

   1) 创建HttpClient的实例

   2) 创建某种连接方法的实例, 在这里是GetMethod
     在GetMethod的构造函数中传入待连接的地址

   3) 调用第一步中创建好的实例的execute 方法来执行第二步中创建好的method 实
      例

   4) 读response

   5) 释放连接, 
     无论执行方法是否成功, 都必须释放连接

   6) 对得到后的内容进行处理

2 POST方法

1) 作用

      用来向目的服务器发出请求, 要求它接受被附在请求后的实体, 并把它当做请求
    队列中请求URL所指定资源的附加新子项

2) 功能

      (1) 对现有资源的注释
      (2) 向电子公告栏/新闻组/邮件列表或类似讨论组发送信息
      (3) 提交数据块, 如将表单的结果提交给数据处理过程
      (4) 通过附加操作来扩展数据库

四 代理器

1 setProxy方法

   第一个参数是代理服务器地址
   第二个参数是端口号

五 认证

1 服务器认证

 HttpClient处理器认证几乎是透明的 , 仅需要开发人员提供登录信息 , 登录信息保存在HttpState类的实例中 , 可以通过setCredentials(String realm, Credentials cred)和getCredentials(String realm)来获取或设置

2 代理认证

 用setProxyCredentials(String realm, Credentials cred)和getProxyCredentials(String realm)设、取登录信息

1)认证方案

(1)Basic
是HTTP中规定最早的也是最兼容的方案 , 遗憾的是也是一个不安全的一个方案 , 因为它以明码传送用户名和密码
它要求一个UsernamePasswordCredentials实例 , 可以指定服务器端的访问空间或采用默认的登录信息
(2)Digest
是HTTP1.1版本中增加的一个方案 , 虽然不如Basic得到的软件支持多 , 但还是
有广泛的使用
Digest方案比Basic方案安全得多 , 因为它根本就不通网络传送实际的密码 ,传
送的是利用这个密码对服务器传来的一个随机数的加密串 , 它要求一个UsernamePasswordCredentials实例 , 可以指定服务器端的访问空间或采用默认的登录信息

3 NTLM认证

    这是HttpClient支持的最复杂的认证协议 , 需要一个NTCredentials实例

你可能感兴趣的:(HttpClient(dubbo))