1
0
mirror of https://github.com/kataras/iris.git synced 2025-12-18 10:27:06 +00:00

add two new examples and share the app's specific logger instance with sessions databases and APIBuilder

This commit is contained in:
Gerasimos (Makis) Maropoulos
2020-08-16 07:07:36 +03:00
parent ef7d365e81
commit 889b7942d3
23 changed files with 346 additions and 89 deletions

View File

@@ -0,0 +1,51 @@
package main
import "github.com/kataras/iris/v12"
func newApp() *iris.Application {
app := iris.New()
// This will create a new "www" subdomain
// and redirect root-level domain requests
// to that one:
www := app.WWW()
www.Get("/", info)
www.Get("/about", info)
www.Get("/contact", info)
www.PartyFunc("/api/users", func(r iris.Party) {
r.Get("/", info)
r.Get("/{id:uint64}", info)
r.Post("/", info)
r.Put("/{id:uint64}", info)
})
return app
}
func main() {
app := newApp()
// http://mydomain.com
// http://mydomain.com/about
// http://imydomain.com/contact
// http://mydomain.com/api/users
// http://mydomain.com/api/users/42
// http://www.mydomain.com
// http://www.mydomain.com/hi
// http://www.mydomain.com/about
// http://www.mydomain.com/contact
// http://www.mydomain.com/api/users
// http://www.mydomain.com/api/users/42
app.Listen("mydomain.com:80")
}
func info(ctx iris.Context) {
method := ctx.Method()
subdomain := ctx.Subdomain()
path := ctx.Path()
ctx.Writef("\nInfo\n\n")
ctx.Writef("Method: %s\nSubdomain: %s\nPath: %s", method, subdomain, path)
}