概述
Gin是一个由Go语言编写的高性能Web框架。
简单案例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| package main
import ( "github.com/gin-gonic/gin" "net/http" )
func sayHello(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "message": "Hello world!", }) }
func main() { r := gin.Default() r.GET("/hello", sayHello) r.Run() }
|
RESTful
REST,即Representational State Transfer,表现层状态转化。RESTful架构:
- 每一个URL代表一种资源
- 客户端与服务器之间,传递这种资源的某种表现层(把资源具体呈现出来的形式,叫做它的表现层)
- 客户端通过四个HTTP动词,对服务器端资源进行操作,实现表现层状态转化:
- GET用于获取资源
- POST用于新建资源
- PUT用于更新资源
- DELETE用于删除资源
Gin框架支持开发RESTful API的开发:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| func main() { r := gin.Default() r.GET("/book", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "method": "GET", }) }) r.POST("/book", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "method": "POST", }) }) r.PUT("/book", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "method": "PUT", }) }) r.DELETE("/book", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "method": "DELETE", }) }) r.Run() }
|