2013-02-06 122 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