package main import ( "github.com/kataras/iris" ) func main() { app := iris.New() app.Controller("/user", new(UserController)) // GET http://localhost:9092/user // GET http://localhost:9092/user/42 // POST http://localhost:9092/user // PUT http://localhost:9092/user/42 // DELETE http://localhost:9092/user/42 // GET http://localhost:9092/user/followers/42 app.Run(iris.Addr(":9092")) } // UserController is our user example controller. type UserController struct { iris.Controller } // Get handles GET /user func (c *UserController) Get() { c.Ctx.Writef("Select all users") } // GetBy handles GET /user/42 func (c *UserController) GetBy(id int) { c.Ctx.Writef("Select user by ID: %d", id) } // Post handles POST /user func (c *UserController) Post() { username := c.Ctx.PostValue("username") c.Ctx.Writef("Create by user with username: %s", username) } // PutBy handles PUT /user/42 func (c *UserController) PutBy(id int) { c.Ctx.Writef("Update user by ID: %d", id) } // DeleteBy handles DELETE /user/42 func (c *UserController) DeleteBy(id int) { c.Ctx.Writef("Delete user by ID: %d", id) } // GetFollowersBy handles GET /user/followers/42 func (c *UserController) GetFollowersBy(id int) { c.Ctx.Writef("Select all followers by user ID: %d", id) }