在Iris框架中,app.Party("/v1") 是用于创建路由分组的一种方式。这个分组可以包含一组相关的路由,并且可以对这些路由应用中间件、设置前缀等。要将这个路由分组关联到主应用,你只需要在主应用中定义这个分组,并在分组中定义具体的路由即可。
以下是一个简单的示例,展示如何将路由分组关联到主应用:
package main
import (
"github.com/kataras/iris/v12"
)
func main() {
app := iris.New()
// 创建一个路由分组,前缀为 "/v1"
v1 := app.Party("/v1")
{
// 在分组中定义路由
v1.Get("/users", func(ctx iris.Context) {
ctx.JSON(iris.Map{"message": "Get all users"})
})
v1.Get("/users/{id:int}", func(ctx iris.Context) {
id := ctx.Params().GetIntDefault("id", 0)
ctx.JSON(iris.Map{"message": "Get user by ID", "id": id})
})
v1.Post("/users", func(ctx iris.Context) {
ctx.JSON(iris.Map{"message": "Create a new user"})
})
}
// 启动应用
app.Run(iris.Addr(":8080"))
}
app.Party("/v1"): 创建了一个路由分组,前缀为 /v1。这意味着这个分组下的所有路由都会以 /v1 开头。v1 分组中定义了三个路由:
GET /v1/users: 获取所有用户。GET /v1/users/{id:int}: 根据ID获取用户。POST /v1/users: 创建一个新用户。app.Run(iris.Addr(":8080")): 启动应用,监听8080端口。app.Party("/v1") 创建的分组已经自动关联到主应用 app 上。你只需要在分组中定义路由,这些路由就会自动成为主应用的一部分。GET http://localhost:8080/v1/usersGET http://localhost:8080/v1/users/1POST http://localhost:8080/v1/users你还可以在分组上应用中间件,例如:
v1.Use(func(ctx iris.Context) {
// 在分组中的所有路由上应用中间件
ctx.Next()
})
这样,所有 /v1 分组下的路由都会先经过这个中间件处理。
通过这种方式,你可以将路由分组关联到主应用,并且可以灵活地管理和组织路由。