为了账号安全,请及时绑定邮箱和手机立即绑定

Gin最新版入门与案例实战

难度入门
时长 2小时30分
学习人数
综合评分9.33
7人评价 查看评价
10.0 内容实用
9.4 简洁易懂
8.6 逻辑清晰
  • package main
    
    import (
        "go-ranking/router"
    )
    
    func main() {
        r := router.Router()
        
        r.Run(":9999")
    }
    package router
    
    import (
        "github.com/gin-gonic/gin"
        "net/http"
    )
    
    // Router 路由,这里方法名要大写,因为要导出出去,在别的包里使用
    func Router() *gin.Engine {
        r := gin.Default()
        userGroup := r.Group("/user")
        // 注意这里,他们不是一起的。
        {
           userGroup.GET("/list", func(c *gin.Context) {
              c.JSON(http.StatusOK, gin.H{"message": "list"})
           })
    
           userGroup.POST("/create", func(c *gin.Context) {
              c.JSON(http.StatusOK, gin.H{"message": "create"})
           })
    
           userGroup.DELETE("/delete", func(c *gin.Context) {
              c.JSON(http.StatusOK, gin.H{"message": "delete"})
           })
    
           userGroup.PATCH("/patch", func(c *gin.Context) {
              c.JSON(http.StatusOK, gin.H{"message": "patch "})
           })
           userGroup.PUT("/put", func(c *gin.Context) {
              c.JSON(http.StatusOK, gin.H{"message": "put "})
           })
        }
        return r
    }


    对核心代码做一些解释

    • 函数声明:

    • func Router() 表示定义一个名为 Router 的函数。

    • 返回值 *gin.Engine 表示这个函数返回一个指向 gin.Engine 实例的指针,gin.Engine 是 Gin 框架的核心路由器。

    • *gin.Engine:

    • gin.Engine 是 Gin 的核心类型,代表整个 HTTP 路由器和中间件系统。

    • 通过 gin.Engine 实例,可以定义应用的路由、请求处理逻辑、中间件等。

    查看全部
  • 1. 初始化项目

    // 目录
    mkdir go-ranking
    cd go-ranking
    // 初始化项目


    2.依赖下载

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

     首次安装模块:安装指定的模块及其依赖。

     更新已安装的模块:如果模块已经安装,-u 参数会更新到最新版本,并将依赖也更新到最新

     解释一下 gin 是什么

    Gin 是一个用 Go(Golang)编写的轻量级 Web 框架,专门用于构建高性能的 HTTP Web 应用和 RESTful API。Gin 的设计灵感来源于 Python 的 Flask 框架,提供了简洁易用的 API,能够快速地构建 Web 应用和服务。它是 Go 语言社区中使用广泛的 Web 框架之一。


    Gin 的主要特点


    1. 高性能:Gin 使用了 net/http 标准库构建,优化了路由处理性能,适合需要高并发的场景。

    2. 简洁易用:Gin 提供了简单的接口,代码风格清晰,可以用很少的代码实现复杂的 API 逻辑。

    3. 中间件支持:Gin 支持中间件机制,可以自定义日志、错误处理、认证等操作,增加了灵活性。

    4. 路由功能强大:支持参数化路由、分组路由等功能,使代码结构更清晰,管理路由更方便。

    5. JSON 处理便捷:Gin 内置了 JSON 序列化与反序列化操作,适合构建 JSON API。


    3. 第一个Web程序:

    package main
    
    import (
        "fmt"
        "github.com/gin-gonic/gin"
        "net/http"
    )
    
    func main() {
        fmt.Println("Hello World")
        r := gin.Default()
        r.GET("/ping", func(c *gin.Context) {
           c.JSON(http.StatusOK, gin.H{
              "message": "Pong",
           })
        })
        r.Run(":9999")
    }


    4. 访问http://127.0.0.1:9999/ping 返回

    {
      "message": "Pong"
    }


    That's all

    注意这里

    查看全部
    0 采集 收起 来源:实现属于你的Gin小案例

    笔记审核中笔记正在审核中,仅自己可见 2024-11-08

  • defer:延迟执行,先defer的后执行

    panic 程序直接终止

    recover在defer中执行,让程序恢复正常的状态去执行

    查看全部
  • 3-4章节大纲课后复习大纲

    1. 如何获取get方式xxx?id=xxx&name=xxx中的id和name

    2. 如何获取post方式请求的body中的表单对象

    3. 如何获取post方式请求的body中的json对象(map和结构体两种方式获取)

    查看全部
  • 记录下来

    查看全部
    0 采集 收起 来源:导学

    2023-08-12

  • 还可以

    查看全部
    0 采集 收起 来源:导学

    2023-08-12

  • 不错

    查看全部
    0 采集 收起 来源:导学

    2023-08-12

  • 1

    查看全部
    0 采集 收起 来源:导学

    2023-07-27

  • 记录一下,很有帮助655479660001416009720608.jpg
    查看全部
    1 采集 收起 来源:导学

    2023-11-15

首页上一页12下一页尾页

举报

0/150
提交
取消
课程须知
会Go语言基础语法
老师告诉你能学到什么?
1.快速搭建Gin开发框架,可以在企业中开发项目,为小伙伴在企业中使用做好基础 2.能够使用Gin框架开发项目 3.了解助力榜实现方案,以及通过redis优化的方案 4.了解Go语言线上部署 5.利用宝塔搭建web服务器

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!