Gin RESTful API

2023-03-22 15:23 更新

要弄清楚什么是RESTful API,首先要知道REST是什么

REST是Representational State Transfer的簡稱,中文翻譯為“表征狀態(tài)轉(zhuǎn)移”或“表現(xiàn)層狀態(tài)轉(zhuǎn)化”

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

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

只要API程序遵循了REST風(fēng)格,那就可以稱其為RESTful API。目前在前后端分離的架構(gòu)中,前后端基本都是通過RESTful API來進(jìn)行交互

例如,我們現(xiàn)在要編寫一個學(xué)生管理系統(tǒng),我們可以對一個學(xué)生進(jìn)行查詢、創(chuàng)建、更新和刪除等操作,我們在編寫程序的時候就要設(shè)計客戶端瀏覽器與我們Web服務(wù)端交互的方式和路徑。按照RESTful API我們通常會設(shè)計成如下模式:

 請求方法  URL  含義
 GET  /student  查詢學(xué)生信息
 POST  /create_student  創(chuàng)建學(xué)生信息
 PUT  /updata_student  更新學(xué)生信息
 DELETE  /delete_student  刪除學(xué)生信息

Gin框架支持RESTful API的開發(fā),代碼如下

package main

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

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

	r.GET("/student", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"message": "查詢學(xué)生信息成功",
		})
	})
	r.POST("/create_student", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"message": "創(chuàng)建學(xué)生信息成功",
		})
	})
	r.PUT("/updata_student", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"message": "更新學(xué)生信息成功",
		})
	})
	r.DELETE("/delete_student", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"message": "刪除學(xué)生信息成功",
		})
	})
	r.Run()
}

開發(fā)RESTful API的時候我們通常使用postman來做為客戶端的測試工具

結(jié)果如下  RESTful API測試用例1



以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號