一.Gin框架介紹與基本使用


一.Gin框架介紹與基本使用

1.基本介紹

  • Gin是一個golang的微框架,封裝比較優雅,API友好,源碼注釋比較明確,具有快速靈活,容錯方便等特點
  • 對於golang而言,web框架的依賴要遠比Python,Java之類的要小。自身的net/http足夠簡單,性能也非常不錯
  • 借助框架開發,不僅可以省去很多常用的封裝帶來的時間,也有助於團隊的編碼風格和形成規范
  • 由於使用了httprouter,速度提高了近40倍。 如果你是性能和高效的追求者, 你會愛上Gin.

2.Gin框架安裝與使用

安裝

  1. 下載安裝Gin:
go get -u github.com/gin-gonic/gin
  1. 將其導入您的代碼中:
import "github.com/gin-gonic/gin"
  1. (可選)導入net/http。例如,如果使用常量,則需要這樣做http.StatusOK。

    import "net/http"
    

簡單示例

package main

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

func main()  {
	// 1.創建路由
	r:=gin.Default()
	// 2. 綁定路由規則
	// gin.Context,封裝了request和response
	r.GET("/", func(c *gin.Context) {
		c.String(http.StatusOK,"hello world")
	})
	// 3.監聽端口,默認8080
	// run("里面不指定端口號默認為8080")
	r.Run(":8000")
}

3.RESTful API規范

REST與技術無關,代表的是一種軟件架構風格,REST是Representational State Transfer的簡稱,中文翻譯為“表征狀態轉移”或“表現層狀態轉化”。

推薦閱讀:阮一峰 理解RESTful架構

簡單來說,REST的含義就是客戶端與Web服務器之間進行交互的時候,使用HTTP協議中的4個請求方法代表不同的動作。

  • GET用來獲取資源
  • POST用來新建資源
  • PUT用來更新資源
  • DELETE用來刪除資源。

img

只要API程序遵循了REST規范,那就可以稱為RESTful API。目前在前后端分離的架構中,前后端基本都是通過RESTful API來進行交互。

簡單示例

比如,編寫一個圖書管理系統,,我們可以查詢對一本書進行查詢、創建、更新和刪除等操作,我們在編寫程序的時候就要設計客戶端瀏覽器與我們Web服務端交互的方式和路徑。按照經驗我們通常會設計成如下模式:

請求方法 URL 含義
GET /book 查詢書籍信息
POST /create_book 創建書籍記錄
POST /update_book 更新書籍信息
POST /delete_book 刪除書籍信息

同樣的需求我們按照RESTful API設計如下:

請求方法 URL 含義
GET /book 查詢書籍信息
POST /book 創建書籍記錄
PUT /book 更新書籍信息
DELETE /book 刪除書籍信息

Gin框架支持開發RESTful API的開發。

package main

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

func main()  {
	// 1.創建路由
	r:=gin.Default()
	// 2. 綁定路由規則
	// gin.Context,封裝了request和response
	// 查
	r.GET("/book", func(c *gin.Context) {
		c.JSON(200,gin.H{
			"message":"GET",
		})
	})
	// 增
	r.POST("/book", func(c *gin.Context) {
		c.JSON(200,gin.H{
			"message":"POST",
		})
	})
	// 改
	r.PUT("/book", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "PUT",
		})
	})
	// 刪
	r.DELETE("/book", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"message": "DELETE",
		})
	})
	// 3.監聽端口,默認8080
	// run("里面不指定端口號默認為8080")
	r.Run(":8000")
}

然后訪問地址:http://127.0.0.1:8000/book

開發RESTful API的時候我們通常使用Postman來作為客戶端的測試工具。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM