zoukankan      html  css  js  c++  java
  • gin web 2

    routers/router.go

    package routers
    
    import (
        "github.com/gin-gonic/gin"
        
        "gin-blog/pkg/setting"
    )
    
    func InitRouter() *gin.Engine {
        r := gin.New()
    
        r.Use(gin.Logger())
    
        r.Use(gin.Recovery())
    
        gin.SetMode(setting.RunMode)
    
        r.GET("/test", func(c *gin.Context) {
            c.JSON(200, gin.H{
                "message": "test",
            })
        })
    
        return r
    }

    gin-blog/main.go

     1 package main
     2 
     3 import (
     4     "fmt"
     5     "net/http"
     6 
     7     "gin-blog/routers"
     8     "gin-blog/pkg/setting"
     9 )
    10 
    11 func main() {
    12     router := routers.InitRouter()
    13 
    14     s := &http.Server{
    15         Addr:           fmt.Sprintf(":%d", setting.HTTPPort),
    16         Handler:        router,
    17         ReadTimeout:    setting.ReadTimeout,
    18         WriteTimeout:   setting.WriteTimeout,
    19         MaxHeaderBytes: 1 << 20,
    20     }
    21 
    22     s.ListenAndServe()
    23 }

    定义接口

    本节正是编写标签的逻辑,我们想一想,一般接口为增删改查是基础的

    • 获取标签列表:GET("/tags")
    • 新建标签:POST("/tags")
    • 更新指定标签:PUT("/tags/:id")
    • 删除指定标签:DELETE("/tags/:id")

    新的routers/router.go

    package routers
    
    import (
        "github.com/gin-gonic/gin"
        
        "gin-blog/routers/api/v1"
        "gin-blog/pkg/setting"
    )
    
    func InitRouter() *gin.Engine {
        r := gin.New()
    
        r.Use(gin.Logger())
    
        r.Use(gin.Recovery())
    
        gin.SetMode(setting.RunMode)
    
        apiv1 := r.Group("/api/v1")
        {
            //获取标签列表
            apiv1.GET("/tags", v1.GetTags)
            //新建标签
            apiv1.POST("/tags", v1.AddTag)
            //更新指定标签
            apiv1.PUT("/tags/:id", v1.EditTag)
            //删除指定标签
            apiv1.DELETE("/tags/:id", v1.DeleteTag)
        }
    
        return r
    }
    
  • 相关阅读:
    crontab定时任务
    find at tar命令详解
    c#调用c++dll库调用约定问题
    ATL和ActiveX做的控件.dll和.ocx最主要的区别(摘录)
    实现内外网的策略
    探查“ORA-01000:超出最多允许打开的游标数”
    良好编程习惯的重要性
    PCS不能用问题
    msf外网--->>安卓
    github 克隆代码问题
  • 原文地址:https://www.cnblogs.com/yeyong/p/14821873.html
Copyright © 2011-2022 走看看