- 论坛徽章:
- 0
|
在做项目过程中,特别是开发服务器类型的项目,经常会使用一些已有协议作为通讯协议,为止我封装了HTTP协议的编/解码过程,希望对大家有帮助。
使用方法很简单,库中提供HttpRequest和HttpResponse两个类,通过这两个类能分别获取到HttpEntity类实例及相应的创建、获取相关元素方法,这主要是根据HTTP协议的组成进行分类封装的。
下面我将举例说明HTTP编/解码库的使用方法:
HTTP请求消息解码:
//创建HTTP请求实例
HttpRequest * request = HttpRequest::CreateRequest();
//获取请求消息实体域的实例
HttpEntity * entity = request->GetHttpEntity();
//消息解码
request->DecodeMessage(message);
//获取URI
string uri = request->GetUri();
//.......
相应地HTTP回应消息解码同上。
下面介绍HTTP编码(以编HTTP回应码为例):
//创建HTTP回应实例
HttpResponse * response = HttpResponse::CreateResponse();
//获取回应消息实体域的实例
HttpEntity * entity = response->GetHttpEntity();
//创建实体域内容类型数据
entity->CreateContent_Type ("text/html");
//创建实体域内容语言数据
entity->CreateContent_Language ("english");
//创建回应消息内容
response->CreateContent ("hello world");
//创建回应消息
string message = response->CreateMessage("HTTP/1.1","200","OK");
//message即为HTTP回应消息数据。
如果使用过程中出现问题,请与我联系。tifpack@hotmail.com |
|