概述
HTTP Method
GET
GET方法请求一个指定资源的表示形式. 使用GET的请求应该只被用于获取数据.
HEAD
HEAD方法请求一个与GET请求的响应相同的响应,但没有响应体.
POST
POST方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用.
PUT
PUT方法用请求有效载荷替换目标资源的所有当前表示。
DELETE
DELETE方法删除指定的资源。
CONNECT
CONNECT方法建立一个到由目标资源标识的服务器的隧道。
OPTIONS
OPTIONS方法用于描述目标资源的通信选项。
TRACE
TRACE方法沿着到目标资源的路径执行一个消息环回测试。
PATCH
PATCH方法用于对资源应用部分修改。
HTTP的规范,对这些方法的用途都有了明确的定义,而我们使用的过程中,也尽可能的遵循这些定义,这样我们在开发中才可以更好的协作。
RESTful API 规范
其实我们应该可以发现,我们开发的一个个Web应用服务或者程序,其实就是对服务器的资源的CRUD(创建、检索、更新和删除),所以 RESTful API 的规范建议我们使用特定的HTTP方法来对服务器上的资源进行操作。
在 RESTful API 中,使用的主要是以下五种HTTP方法:
1.GET,表示读取服务器上的资源
2.POST,表示在服务器上创建资源
3.PUT,表示更新或者替换服务器上的资源
4.DELETE,表示删除服务器上的资源
5.PATCH,表示更新/修改资源的一部分
复制代码
Gin RESTful API 实现
type User struct {
ID uint64
Name string
}
func main() {
users := []User{{ID: 123, Name: "张三"}, {ID: 456, Name: "李四"}}
r := gin.Default()
r.GET("/users", func(c *gin.Context) {
c.JSON(200, users)
})
r.Run(":8080")
}
复制代码
这里我们通过GET方法就可以很容易的注册一HTTP GET请求的处理逻辑,这里是返回所有的用户信息,JSON的格式。
我们运行这段代码,在浏览器里打开http://localhost:8080/users,就可以看到如下信息:
[{"ID":123,"Name":"张三"},{"ID":456,"Name":"李四"}]
复制代码
Gin不光为我们提供了快捷的GET方法,还有其他方法,可以很容易的让我们实现对应的HTTP Method方法注册。
r.POST("/users", func(context *gin.Context) {
//创建一个用户
})
r.DELETE("/usrs/123", func(context *gin.Context) {
//删除ID为123的用户
})
r.PUT("/usrs/123", func(context *gin.Context) {
//更新ID为123的用户
})
r.PATCH("/usrs/123", func(context *gin.Context) {
//更新ID为123用户的部分信息
})
复制代码
此外还有不常用的HEAD、OPTIONS、TRACE、CONNECT等方法,从中可以看出,Gin的API非常友好,可以让我们很容易的使用相应的方法来注册我们对某个HTTP Method的处理。
最后
以上就是清爽小白菜为你收集整理的php结合golang restful,Golang Gin 实战Ⅱ | 简便的Restful API 实现的全部内容,希望文章能够帮你解决php结合golang restful,Golang Gin 实战Ⅱ | 简便的Restful API 实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复