模拟站点的自动登录发帖回复
2009-09-21 00:00:00 来源:WEB开发网文采用 HttpClient 来模拟站点的登录发帖回复,介绍 HttpClient 的用法和常见问题的解决方案。
HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供支持 HTTP 协议的客户端编程工具包,模拟浏览器的行为。它提供了很多的方法来简化网络的访问,虽然大部分的功能可以使用较底层的 java.net.HttpURLConnection 来实现。例如:
* 实现了所有 HTTP 的方法( GET,POST 等)
* 支持 HTTPS 协议
* 支持代理服务器
* 自动维护 Cookies 等
我们知道, http 协议是面向无连接的,要维持会话,现在基本上都是采用基于 Cookies 的方式( Session 机制也是通过 Cookies 实现的),所以 HttpClient 的自动维护 Cookies 的方式对我们的登录发帖回复非常有用(一般网站都需要先登录再发帖回复)。
下面的 例子都是采用 commons-httpclient-3.1.jar 包来实现的(虽然 commons-httpclient-4.0 已经发布,但是代码发生了较大的重构,调用方式也发生了很大的改变)。
下载 jar 包的路径为: http://hc.apache.org/downloads.cgi
由于 httpclient 使用了 Apache Jakarta common 下的子项目 logging 和 codec ,所以也需要在 http://commons.apache.org/ 下载这两个包:
commons-logging.jar
commons-codec-1.3.jar
为了更好地理解代码,设计的 UML 类图如下:
方法调用的时序图如下:
更多精彩
赞助商链接