6

mac一开始安装Gin的时候如果有timeout报错,可以借鉴这篇博客解决:
安装好之后就可以开始下面的步骤了:


和上一篇博客类似,这里利用Gin框架先实现一下

最简易的后端服务:

package main

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

func sayHello(c *gin.Context) {
    //函数会返回状态码是200,JSON格式的数据key是message,value是"Hello Golang",
    c.JSON(200, gin.H{
        "message": "Hello Golang~",
    })
}
func main() {
    //创建默认的路由引擎
    r := gin.Default()
    //用户发送GET请求的时候,会触发sayhello这个函数
    r.GET("/hello", sayHello)
    //在9090端口启动服务
    r.Run(":9090")
}

运行代码,结果如下:


RestFul API

Restful API简单地说,就是

  • 用GET请求来查询获取数据;
  • 用POST请求来创建数据;
  • 用PUT请求来更新数据;
  • 用DELETE请求来删除数据

基于Gin框架的RestFul API开发

这里由于浏览器只能发GET和POST请求,不能很方便的测试POST请求,我们可以下载一些工具(比如postman或者apipost都是免费且挺好用的,可以根据自己的喜好选择)。

基于Gin框架的RestFul API开发真的十分方便, 例子代码如下:

package main

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

func sayHello(c *gin.Context) {
    //函数会返回状态码是200,JSON格式的数据key是message,value是"Hello Golang",
    c.JSON(200, gin.H{
        "message": "Hello Golang~",
    })
}
func main() {
    //创建默认的路由引擎
    r := gin.Default()
    //用户发送GET请求的时候,会触发sayhello这个函数
    r.GET("/hello", sayHello)

    r.GET("/book", func(c *gin.Context) {
        c.JSON(200, 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",
        })
    })
    //在9090端口启动服务
    r.Run(":9090")
}

然后在terminal里面输入go build 回车,./项目名字回车来启动服务,就大功告成啦,就可以愉快的在APIPOST里面调试了:

当然,基于Gin框架的RestFul API开发远不止于此,后续文章会进行更进一步的介绍。


参考:bilibili

LiberHome
409 声望1.1k 粉丝

有问题 欢迎发邮件 📩 liberhome@163.com