Go語言框架Iris-01
阿新 • • 發佈:2022-12-09
安裝Iris
go install github.com/kataras/iris@master
可能會出現連線不上的問題,可以使用七牛雲的代理
具體可以看看這個https://goproxy.cn/
$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.cn,direct
Hello,Iris
func main() {
app := iris.New()
app.Run(iris.Addr(":8558"), iris.WithoutServerError(iris.ErrServerClosed))
}
Get,Post測試
- 注意app.Run要寫道處理最後,不然會404頁面
type Test struct { Name string `json:"name"` Pwd string `json:"pwd"` } type Test2 struct { Name string `form:"name"` Pwd string `form:"pwd"` } func main() { app := iris.New() app.Get("/", func(context context.Context) { path := context.Path() app.Logger().Info(path) }) app.Get("/getTest", func(context context.Context) { param1 := context.URLParam("param1") app.Logger().Info(param1) context.WriteString("ok") }) app.Post("/userinfo", func(context context.Context) { var test Test if err := context.ReadJSON(&test); err != nil { panic(err.Error()) } app.Logger().Info(test) context.WriteString("ok") }) app.Post("/userinfo2", func(context context.Context) { var test Test2 if err := context.ReadForm(&test); err != nil { panic(err.Error()) } app.Logger().Info(test) context.WriteString("ok") }) app.Run(iris.Addr(":8558")) }
RESTful風格Url
func main() { app := iris.Default() //newsid,限制只能為uint64 app.Get("/news/{date}/{newsid:uint64}", func(context context.Context) { date := context.Params().Get("date") newsid := context.Params().Get("newsid") app.Logger().Info(date, newsid) context.WriteString(date + "," + newsid) }) app.Run(iris.Addr(":8558")) }