自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 手撸HTTP是理解HTTP的最好方式(5)

创建于 2020-08-06,完成于 2020-08-07在之前的课程(四)中我们讲了有关如何套用 socket 实现 bufReader,并在此基础上读取 http 请求和返回值。今天的任务是 “[易]实现主程序逻辑,监听端口,接收请求”。所有的代码都在 https://github.com/dashjay/http_demo/tree/5-main-work 中Let’s do it0x1 多线程编程作者对多线程编程了解不是很多,基本上就是在此场景下够用而已。multi_thread#i

2020-08-07 23:37:04 1108

原创 手撸HTTP是理解HTTP的最好方式(4)

在之前的介绍课程(三)中我们讲了一些和配置加载与log程序的工作。今天的任务是 “[难]定义一个bufReader类,并且使用该bufReader从TCP流中解析HTTP请求和返回体”,这是唯一一个被我标识为难的东西,其实也不难,只是相对繁琐。所有的代码都在 https://github.com/dashjay/http_demo/tree/master/4-bufreader 中本节课的代码,全部在上一节课的基础上Let’s do it0x1 TCP基于流传输TCP传输从不以包为单位,也就是说

2020-08-06 11:49:23 1423

原创 手撸HTTP是理解HTTP的最好方式(3)

在之前的介绍课程(二)中我们讲了有关 HTTP 头部,请求体和返回结构在 cpp中的定义,今天我们来说一些很不相关,但是也很重要的内容:今天的任务是 “[易]引入cpptoml从文件读取配置,引入spdlog尝试打log,帮助调试”。所有的代码都在 https://github.com/dashjay/http_demo/tree/3-cpptoml-spdlog 中Let’s do it0x1 为什么要载入配置文件众所周知,编译类的程序,编译一次,可运行n次,在通过一些测试后,即可常年工作。但是

2020-08-03 23:53:26 916

原创 手撸HTTP是理解HTTP的最好方式(2)

在之前的 介绍课程(一) 中我们说有关Cmake和知识,并且选用了一个Socket库今天的任务是 “[易]定义HTTP请求和返回体的结构,构建并输出HTTP请求和返回体到标准输出。”。所有的代码都在 https://github.com/dashjay/http_demo/tree/2-http-request-response 中Let’s do it0x1 初识HTTP请求结构这就是一个简单的HTTP请求,我习惯把他分为三个部分:请求行(第一行),请求头(n行),请求体(之前有一个空行)--

2020-08-03 09:09:23 627

原创 手撸HTTP是理解HTTP的最好方式(1)

在之前的 介绍课程(零) 中我们说了要用六节课来实现一个HTTP,今天的任务是 “[易]简单的Cmake的教程,选用一个Socket库并实现一个echo”。所有的代码都在 https://github.com/dashjay/http_demo/tree/1-cmake-socket-echo 中Let’s do it0x1 编写一个HelloWorld并尝试使用Cmake编译它#include<iostream>int main(){ std::cout <<

2020-08-03 09:08:08 761

原创 手撸HTTP是理解HTTP的最好方式(0)

2020年7月,笔者经过学习了cpp后打算入坑尝试手动实现 HTTP 服务器,过程中遇到很多问题,本文记录了笔者留下的一些记录,提供参考。下面的叙述中含有一些脚注,为了不影响已经非常熟悉的同学的阅读,我把一些说明放到了脚注里,方便阅读。Repo我开在这里,欢迎大家点个Star或者Fork操作。https://github.com/dashjay/http_demo.git本教程1,使用6节课程/文章,尝试使用最简单的CPP知识实现一个高性能,简单的的HTTP Server。[易]简单的Cmak

2020-08-03 09:07:05 270

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除