http协议详解(7)

发布时间:2021-06-07

http协议详解 ,详细介绍HTTP协议的用法。

程序运行时的活动日志记录的类。
3、commons-codec-1.3.jar: 包括编码解码的类。

这些包都是Apache的开源项目,可以在Apache开源组织官网/上找到。

3.2 HttpClient实现HTTP协议基本通信操作

在实现所有操作之前必须首先实例化一个HttpClient,即初始化一个客户端。

HttpClient client = new HttpClient();
3.2.1 请求

以GET请求为例。


a、实例化一个请求方法。



HttpMethod method = new GetMethod("");

注:

① 虽然Google已经将服务器搬出了大陆,但是HttpClient可实现自动转向,即自动重定向。所以当服务器返回的状态代码为3××时,将自动重定向,知道到达文件实际位置)。

② GetMethod构造函数中的字符串表示的是文件的URI地址。这里只是因为之前没有指定服务器主机地址,所以需要完整名。其实也可以这样:



client.getHostConfiguration().setHost("", 80, "http");

……

HttpMethod method = new GetMethod("/simcard.php?simcard=1330227");

b、添加需要的消息报头信息。



method.addRequestHeader("Range", "bytes=500-");

HttpClient会构建必须的消息报头信息,如果没有特殊要求可以不用修改。但如果需要在消息报头添加一些特殊信息,例如下载时需要断点续传等,则可用上述方法修改。

c、发出请求(执行命令)。



int statusCode = client.executeMethod(method);

此时,程序实际向服务器发出请求,连接成功后,函数返回,返回值为状态代码。



3.2.2 响应

接上例。

a、返回状态代码。

上例中的“statusCode”即为状态代码。除此方法之外,还可以:

int statusCode = method.getStatusCode();
注:在httpclient的包中有一个名为“HttpStatus”类,其中定义了大多数的状态代码。如:

HttpStatus.SC_OK
HttpStatus.SC_FORBIDDEN 等。

b、响应报头。

Header[] headers = method.getResponseHeaders();
获取所有服务器端返回的响应报头。

Header header = method.getRequestHeader("Content-Type");
获取响应报头中指定的键值对。

之后可以通过调用header.getName()、header.getValue()来得到相关信息。

c、响应正文。

byte[] bytes = method.getResponseBody();
InputStream inputStream = method.getResponseBodyAsStream();
String string = method.getResponseBodyAsString();
以上三种方法,视情况选用。

3.2.
3 断开连接

method.releaseConnection();
断开连接。

3.2.4 其他

其他包括一些和下载无关,但却非常基本和有用的东西

a、POST数据。

POST请求和GET请求大致相同,唯一需要注意的是,如何在POST信息中加入自己所需传

http协议详解(7).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219