C++封装HTTP

C++ 封装HTTP Client

  • 简介
  • HTTP请求头封装
    • HTTP请求头基本格式
    • post请求头
    • 封装post请求头
  • HTTP Client 以及HTTP Server交互
  • HTTP消息解析
  • TCP封装HTTP Client的坑。
    • Transfer-Encoding: chunked简介
    • 注意

简介

C++封装HTTP协议底层是通过TCP协议实现。
HTTP协议是应用层协议,TCP协议是底层的传输层协议。
使用TCP协议封装HTTP Client进行通信,那么需要封装HTTP请求头、接收HTTP Server的消息以及HTTP消息解析。

HTTP请求头封装

HTTP请求头基本格式

<HTTP METHOD> <URI> <HTTP VERSION>
<HEADER FIELD 1>: <VALUE 1>
<HEADER FIELD 2>: <VALUE 2>
<HEADER FIELD 3>: <VALUE 3>
...
<HEADER FIELD N>: <VALUE N>

<REQUEST BODY>

post请求头

POST /api/login HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 27

{
   "username":"johndoe","password":"password123"}

封装post请求头

//host:主机
//path:URI
//url:URI所携带的参数
//head_content:自定义携带请求头内容
//body_content:body内容
string HttpClient::postRequest(string host, string path,

你可能感兴趣的:(c++,http,开发语言,windows,网络协议)