boost http響應讀取
響應報樣例:
HTTP/1.1 201 Created
Content-Type: application/json
X-Etcd-Cluster-Id: cdf818194e3a8c32
X-Etcd-Index: 115
X-Raft-Index: 1146
X-Raft-Term: 3
Date: Tue, 17 Apr 2018 07:36:20 GMT
Content-Length: 171
{"action":"set","node":{"key":"/test/node/node_using","value":"10.20.6.99","expiration":"2018-04-17T07:36:30.763332719Z","ttl":10,"modifiedIndex":115,"createdIndex":115}}
部分程式碼:
http::response<http::string_body> res;
http::read(socket, buffer, res);
cout << "Result:" << res.result() << "." << res.result_int() << endl;
cout << "Contentlen:" << res.body().size() << endl;
cout << "has len:" << res.has_content_length() << endl;
cout << "body:" << res.body() << endl;
輸出:
Result:Created.201
Contentlen:171
has len:1
一開始用dynamic_body,被坑的好慘,dynamic_body還不清楚原理,想通過res.body()獲取包體死活不行,改為string_body直接搞定
研究了半天大概瞭解了下boost/beast/http/message.hpp裡這樣定義:
深入看下去,meaage繼承自:
從上面的紅色測試程式碼可看出,可以直接獲取包頭的一些資訊,但是如果是dynamic_body的話不能用直接通過body()獲取,還沒研究出用法,知道其涉及到const_buffers_type、multi_buffer等相關類
趕專案,先不研究,有空了再研究
相關文章
- 【Go】優雅的讀取 http 請求或響應的資料GoHTTP
- 【Go】優雅的讀取http請求或響應的資料GoHTTP
- 【Go】優雅的讀取http請求或響應的資料-續GoHTTP
- 【Go】優雅的讀取 http 請求或響應的資料-續GoHTTP
- HTTP 響應HTTP
- python requests讀取伺服器響應Python伺服器
- Sanic Response HTTP 響應HTTP
- HTTP協議-HTTP響應報文HTTP協議
- HTTP請求格式和HTTP響應格式HTTP
- HTTP 請求與響應HTTP
- Http請求與響應HTTP
- HTTP 響應狀態碼HTTP
- HttpClient入門(1) 傳送請求,處理響應及響應重複讀取HTTPclient
- HTTP的請求與響應HTTP
- Go如何響應http請求?GoHTTP
- HTTP請求頭與響應頭HTTP
- HTTP請求與響應簡析HTTP
- 5、Ktor學習-生成HTTP響應;HTTP
- http請求頭與響應頭的應用HTTP
- HTTP&response響應&驗證碼&servletcontextHTTPServletContext
- Qt - http網路請求與響應QTHTTP
- 【前端 · 面試 】HTTP 總結(十)—— HTTP 快取應用前端面試HTTP快取
- [前端 · 面試 ]HTTP 總結(十)—— HTTP 快取應用前端面試HTTP快取
- 指令碼化HTTP 取得響應 指定請求指令碼HTTP
- Spring MVC能響應HTTP請求的原因?SpringMVCHTTP
- HTTP請求頭和響應頭詳解HTTP
- Wireshark的HTTP請求包和響應包如何對應HTTP
- OkHttp 原始碼剖析系列(七)——請求的發起及響應的讀取HTTP原始碼
- SAP UI5 應用讀取 CSRF token 的 HTTP head 請求邏輯解析UIHTTP
- laravel + guzzle 讀取網站連結http狀態Laravel網站HTTP
- JavaWeb基礎(day15)( http + tomcat + servlet + 響應)JavaWebHTTPTomcatServlet
- curl 請求獲取響應時間
- HTTP請求方法及響應狀態碼詳解HTTP
- 最全的HTTP響應狀態碼列表:除了404,HTTP狀態碼還有啥?HTTP
- HTTP快取HTTP快取
- AJAX 獲取伺服器響應資料伺服器
- SAP ABAP應用伺服器的HTTP響應狀態碼(Status Code)伺服器HTTP
- easypoi 讀取 Excel 簡單應用Excel