gin框架简介

介绍

Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点
对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错
借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范

安装

要安装Gin软件包,您需要安装Go并首先设置Go工作区。

1.首先需要安装Go(需要1.10+版本),然后可以使用下面的Go命令安装Gin。

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

2.将其导入您的代码中:

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

3.(可选)导入net/http。例如,如果使用常量,则需要这样做http.StatusOK。

import "net/http"

Hello World

  • main.go
package main

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

func main() {
	// 创建路由
	router := gin.Default()

	router.Use(setUserName)

	// 注册路由
	registerRouter(router)

	router.Run()
}

func registerRouter(router *gin.Engine) {
	// 注册hello路由
	new(controller.Hello).Register(router)
}

func setUserName(context *gin.Context) {
	context.Set("username", "马亚南")
}
  • controller包中的hello.go
package controller

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

type Hello struct {}
func (h *Hello) Register(router *gin.Engine) {
	// 绑定路由规则执行的函数
	router.GET("/hello", h.Hello)
}
func (h *Hello) Hello(context *gin.Context) {
	// gin.Context里面封装了request和response
	// 上下文是 gin 中最重要的部分。例如,它允许我们在中间件之间传递变量、管理流程、验证请求的 JSON 并呈现 JSON 响应。
	context.JSON(http.StatusOK, gin.H{
		"name": "zhang",
		"age": 18,
		"username": context.MustGet("username"),
	})
}

posted @ 2021-12-07 11:11  专职  阅读(854)  评论(0编辑  收藏  举报