自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 七天用GO从零实现系列-学习

所谓分组,是指路由的分组。当然了,按照我们一开始的分析,中间件是应用在分组上的,那还需要存储应用在该分组上的中间件(middlewares)。中间件可以给框架提供无限的扩展能力,应用在分组上,可以使得分组控制的收益更为明显,而不是共享相同的路由前缀这么简单。因此,我们今天实现的分组控制也是以前缀来区分,并且支持分组的嵌套。分组上的中间件(middleware),也都会作用在子分组,子分组还可以应用自己特有的中间件。是默认的最顶层的分组,也就意味着给所有的路由,即整个框架增加了记录日志的能力。

2024-05-22 16:42:46 416 1

原创 七天用GO从零实现系列-学习

之前,我们用了一个非常简单的map结构存储了路由表,使用map存储键值对,索引非常高效,但是有一个弊端,键值对的存储的方式,只能用来索引静态路由。那如果我们想支持类似于这样的动态路由怎么办呢?所谓动态路由,即一条路由规则可以匹配某一类型而非某一条固定的路由。例如,可以匹配hello/jack等。动态路由有很多种实现方式,支持的规则、性能等有很大的差异。例如开源的路由实现gorouter支持在路由规则中嵌入正则表达式,例如,即路径中的参数仅匹配数字和字母;另一个开源实现httprouter。

2024-05-09 16:48:42 1675

原创 七天用GO从零实现系列-学习

但是这两个对象提供的接口粒度太细,比如我们要构造一个完整的响应,需要考虑消息头(Header)和消息体(Body),而 Header 包含了状态码(StatusCode),消息类型(ContentType)等几乎每次请求都需要设置的信息。因此,如果不进行有效的封装,那么框架的用户将需要写大量重复,繁杂的代码,而且容易出错。最重要的还是通过实现了 ServeHTTP 接口,接管了所有的 HTTP 请求。我修改之后,返回了用户名和密码,这里跟我之前学的gin感觉是一样的,有更好的可以提出。

2024-05-04 20:54:57 404

原创 七天用GO从零实现系列-学习

Go语言内置了net/http库,封装了HTTP网络编程的基础的接口,我们实现的GeeWeb 框架便是基于net/http的。我们接下来通过一个例子,简单介绍下这个库的使用。

2024-05-04 16:29:09 1584

原创 学完C之后迈向C++

吾将上下而求索

2022-10-16 15:00:06 292 2

原创 学完C之后迈向C++

路漫漫其修远兮

2022-10-15 11:40:46 405 2

原创 学完C之后迈向C++

考驾照落下了几天 马上补马上补

2022-10-13 11:04:08 1196 1

原创 学完C之后迈向C++

日复一日,终有一日。

2022-10-09 14:44:30 134

原创 学完C之后迈向C++

又是一天摸鱼,继续加油

2022-10-07 16:30:17 246

原创 学完C之后迈向C++

继续努力 继续前进

2022-10-06 16:35:41 557 1

原创 学完C之后迈向C++

C++小白学习笔记

2022-10-05 16:13:09 102

空空如也

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

TA关注的人

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