转载

Go-Gin框架基础使用

Gin框架介绍


1.Gin是一个用Go语言编写的web框架。它是一个类似于martini但拥有更好性能的API框架, 由于使用了httprouter,速度提高了近40倍。 如果你是性能和高效的追求者, 你会爱上Gin。

2.Go世界里最流行的Web框架,Github上有32K+star。 基于httprouter开发的Web框架。 中文文档齐全,简单易用的轻量级框架。

安装

执行以下命令即可

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

在国内,由于种种不可抗力原因,可能会导致下载失败,推荐使用GoProxy进行代理下载。

设置代理

go env -w GOPROXY=https://goproxy.cn,direct

然后再执行安装命令即可~


第一个Gin案例

启动Web端,定义一个/Hello请求
import (
	"fmt"
	"github.com/gin-gonic/gin"
)

func main() {
	router := gin.Default() //返回默认的路由引擎

	//绑定Path和处理函数(Get方式)
	router.GET("/Hello", func(context *gin.Context) {
		//响应给客户端Json数据
		result := gin.H{
			"msg" : "Hello Gin!",
		}
		context.JSON(200,result)
	})


	//启动服务 指定端口,默认端口为8080
	router.Run()
}

Rest风格API定义

//Restful风格API
	//GET
	router.GET("/book", func(context *gin.Context) {
		context.JSON(http.StatusOK,gin.H{
			"method": "GET",
		})
	})

	//POST
	router.POST("/book", func(context *gin.Context) {
		context.JSON(http.StatusOK,gin.H{
			"method":"POST",
		})
	})

	//PUT
	router.PUT("/book", func(context *gin.Context) {
		context.JSON(http.StatusOK,gin.H{
			"method":"PUT",
		})
	})

	//DELETE
	router.DELETE("/book", func(context *gin.Context) {
		context.JSON(http.StatusOK,gin.H{
			"method":"DELETE",
		})
	})

待续...

Go

留言板