Gin 能够写Martini-like API, 请问这个Martini-API是什么意思?

Gin 能够写Martini-like API, 请问这个Martini-API是什么意思?
和Restful API 有什么区别吗?应该是属于RestfulAPI范畴之内吧,但是有什么区别呢?

阅读 5.7k
1 个回答

Martini 是 Go 生态中的一个 Web 框架:

https://github.com/go-martini...

只不过现在很少有人用了吧,可以做为学习来了解。

Martini-like API 是指 Gin 框架内部的 API 命名风格、传参形式跟 Martini 类似。比如定义一个路由分组:

// Martini
m.Group("/users", func(r martini.Router) {
    r.Post("/", CreateUserEndpoint)
    r.Get("/:id", GetUserEndpoint)
    r.Put("/:id", UpdateUserEndpoint)
    r.Delete("/:id", DeleteUserEndpoint)
})

// Gin
r := engine.Group("/users") {
    r.POST("/", CreateUserEndpoint)
    r.GET("/:id", GetUserEndpoint)
    r.PUT("/:id", UpdateUserEndpoint)
    r.DELETE("/:id", DeleteUserEndpoint)
}

因为 Martini 诞生的比较早(2013 年),所以作为 2015 年才出现的“后辈” Gin 来说保持一个跟当时比较流行的框架一样的 API,比较容易吸引人们去学习和理解、也降低了开发者们现有项目的迁移成本。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进