深入Gin框架内幕(二)
在上一篇文章 深入gin框架内幕(一) 中,主要介绍了Gin框架中是如何创建一个HTTP服务以及内部的核心结构和常用的一些结构体方法,并在最后以一个简单的示例来详细讲解Gin框架内部具体是如何运行的,但是在最后我们会发现使用了一个 Context 引用对象的一些方法来返回具体的HTTP响应数据,在本篇文章中,我们将继续学习和分析Gin框架内幕。 在开始分析之前,我们先简单回顾一下上一个章节中讲到的Gin框架中的几个核心的结构. Gin框架中的几个核心结构 Gin框架中的几个重要的模型: Engine : 用来初始化一个 gin 对象实例,在该对象实例中主要包含了一些框架的基础功能,比如日志,中间件设置,路由控制(组),以及handlercontext等相关方法. 源码文件 Router : 用来定义各种路由规则和条件,并通过HTTP服务将具体的路由注册到一个由context实现的handler中 Context: Context 是框架中非常重要的一点,它允许我们在中间件间共享变量,管理整个流程,验证请求的json以及提供一个json的响应体. 通常情况下我们的业务逻辑处理也是在整个Context引用对象中进行实现的. Bind: 在Context中我们已经可以获取到请求的详细信息,比如HTTP请求头和请求体,但是我们需要根据不同的HTTP协议参数来获取相应的格式化