19 04 2022

第二十章、Gin框架

        一、Gin框架介绍

            1.1 Gin框架简介

            Gin 是一个用 Go (Golang) 编写的 Web 框架。 它具有类似 martini 的 API,性能要好得多,多亏了 httprouter,速度提高了 40 倍。 如果您需要性能和良好的生产力,您一定会喜欢 Gin。

        二、快速入门

            2.1 下载并安装gin

            go get -u github.com/gin-gonic/gin

            2.2 gin渲染HTML

            image.png

            image.png


            终端curl 命令发送请求

            image.png

            2.3 自定义模板函数

            image.png

            image.png

            image.png

            2.4 静态文件处理

            image.png

            image.png

            image.png

            2.5 使用模板继承

            image.png

            image.png


            

            以下模板继承来自于网络其他方式:

            header文件:

            image.png


            footer文件:

            image.png

    

            extends文件:

            image.png

            

            代码如下:

            image.png



        三、gin框架返回数据

            3.1 获取URL参数

            3.1.1 通用处理方式Handle()方式

            image.png


            3.1.2 分类处理engine.GET()        engine.POST(),POST表单默认解析方式x-www-form-urlencoded或from-data格式的参数

            image.png

            image.png

            image.png


            3.2 多数据格式返回请求结果

            image.png


            3.3 表单实体绑定

            image.png

            image.png

            image.png

            image.png


            image.png

            3.4 Any路由的使用

            image.png

            3.5 文件上传

            3.5.1 单文件上传

            image.png

            3.5.2 多文件上传

            image.png

            image.png

            3.6 为不存在的路由配置处理函数

            image.png

            image.png

            image.png

            3.7 日志记录进文件

            image.png

            image.png

            


        四、重定向

           image.png

             4.1 HTTP重定向

            image.png

             4.2 路由重定向

            image.png


        五、路由分组

            4.1 路由分组

            image.png

            image.png

                  image.png


            image.png

            4.2 简化路由分组

            image.png


        五、中间件

            5.1 中间件

            image.png

            image.png

            

            案例演示一,所有API共用中间件:

            image.png

            案例演示二,单独一个API使用中间件方式:

            image.png

            image.png


            5.2 context.Next函数,将中间件代码一分为二执行,执行完成相关调用以后回来继续context.Next()后面的处理函数

            image.png

            案例演示:

            image.png

            image.png

            

            image.png


            5.3 context.Abort函数,阻止调用处理函数

            image.png

            image.png

            页面没有反馈,空白

            image.png

            5.5 context.Abort函数和context.Next函数应用

            image.png


            5.6 路由组注册中间件

            image.png

            5.7 中间件注意事项

            image.png