2013-02-06 92 views
0

我在理解cpp netlib文档时遇到了一些麻烦。cpp netlib头文件

member name type    description 
headers  vector<header>  Vector of headers. 

A header is a struct of type response_header<http::tags::http_server>. 
An instance always has the members name and value both of which are of type string_type. 
string_type is boost::network::string<http::tags::http_server>::type. 

在我的代码,当我尝试访问标题:

http_server::response_header headers[] = request.headers; 

上面没有编译。我明白这可能看起来很基本,但我对C++很陌生。 任何人都可以指导我如何迭代通过请求标头?

回答

0

我想出了解决方案,为了其他人的使用Google搜索这个。看来文档是错误的。解析请求时,应使用Request_header而不是响应标头

1
class handler; 
typedef http::async_server<handler> server; 
for (server::request::vector_type::iterator it = request.headers.begin(); it != request.headers.end(); ++it) { 
    printf("%s: %s", it->name.c_str(), it->value.c_str()); 
} 
+0

为什么使用printf?:) – PovilasB