gin简单学习

2017-08-23  本文已影响114人  想入飞飞___

0.介绍

gin,是golang的一个快速http框架,十分轻巧好用。

1.快速上手

package main

import (
"github.com/gin-gonic/gin"

)

func main() {
    
    r := gin.Default()
    r.GET("/test", func(c *gin.Context) {
        //c.String(200,"1111")
        c.String(200,"test")
    })
    r.Run() // listen and server on 0.0.0.0:8080
}

默认端口是8080,http://localhost:8080/test,打开链接如下,

test.png

可以看到构建一个http请求十分简单,如果是用spring,估计还在配置呢,当然 spring boot还是配置很快的,再接下来看看返回json

2.json

package main

import (
"github.com/gin-gonic/gin"

)

func main() {

    r := gin.Default()
    r.GET("/test", func(c *gin.Context) {
        //c.String(200,"1111")
        c.JSON(200, gin.H{
            "code":0,
            "msg":"ok",
            "data":"data",
        })
    })
    r.Run() // listen and server on 0.0.0.0:8080
}

页面上看到的json是:{"code":0,"data":"data","msg":"ok"}
平常开发中,当我们想要返回json时,常常是把一个对象生成 json,记得特别深在spring boot中直接返回一个对象就自动帮你生成josn了,gin是怎么做的呢,我们看一下,

package main

import (
"github.com/gin-gonic/gin"

)

func main() {

    type Student struct {
        Name string
        Age int
    } 

    r := gin.Default()
    r.GET("/test", func(c *gin.Context) {
        //c.String(200,"1111")
        c.JSON(200,Student{"la",17})
    })
    r.Run() // listen and server on 0.0.0.0:8080
}

是不是很简单,直接返回一个结构体就可以了

3.带参数的请求

package main

import (
"github.com/gin-gonic/gin"
)

func main() {
    r := gin.Default()

    r.GET("/test/:name", func(c *gin.Context) {
        name := c.Param("name")
        c.String(200, "Hello %s", name)
    })

    r.Run()
}

拿参数通过Param()方法,还有Params()方法可以拿多个参数。

上一篇下一篇

猜你喜欢

热点阅读