https://blog.csdn.net/codeSquare/article/details/98979878

经过前面几章节的学习,基本对 Gin 中的一些概念和函数有所了解和掌握,也知道如何在代码中对其进行使用,那么接下来,我们将目光回到很久很久以前,具体多久呢?估摸着就是你在学习第二章 Gin 路由 的时候。
今天,不在模板上做文章了,而是要开启新的章节,我们叫它 restful。

restful 是什么

说到 restful 相信很多乃至大量的朋友们都不陌生,如果你已经知道那就直接看下一个章节,但还是有很多小伙伴是第一次接触,那么这里就简单介绍一下restful。
简单的说 restful 就是一种 接口定义风格,比如说之前我们的接口对于更新用户可能这样定义, /update_user 对于获取当前用户可能是 get_user ,删除当前用户为 /delete_user ,而现在使用 restful 风格的接口,那么我们对于更新用户的接口定义为 /user,获取用户定义为 /user ,删除用户为 /user 。
???…………………………???
第一次接触的朋友肯定是满脸问号,所以我访问一下 /user 数据是更新了?删除了?还是获取一个用户?所以说一个完整的 restful 风格的接口并不是只是 url 的定义,还有请求方式。
还记得第二章中对于 gin 提供的 http 请求方式的说明吗?所以一个完整的 restful 请求需要加上请求方式。对于更新用户我们的接口应该是用 update 请求 `/user,对于获取用户应该用get请求方式/user,对于删除用户应该用delete请求/user 接口。
这里只对 restful 请求方式做最简单的介绍。

第一个接口

举例(zp)

  1. package initRouter
  2. import (
  3. "GinHello/handler/article"
  4. "github.com/gin-gonic/gin"
  5. )
  6. func SetupRouter() *gin.Engine {
  7. router := gin.Default()
  8. articleRouter := router.Group("")
  9. {
  10. // 通过获取单篇文章
  11. articleRouter.GET("/article/:id", article.GetOne)
  12. // 获取所有文章
  13. articleRouter.GET("/articles", article.GetAll)
  14. // 添加一篇文章
  15. articleRouter.POST("/article", article.Insert)
  16. articleRouter.DELETE("/article/:id", article.DeleteOne)
  17. }
  18. return router
  19. }

上面的路由,方法不同,或者参数不同,都由不同的方法去执行请求