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

add sharable package-level hero dependencies with the mvc controllers instances

Former-commit-id: 6c53190e40fa42d242a73eb80361830b65f0d077
This commit is contained in:
Gerasimos (Makis) Maropoulos
2017-12-27 15:09:52 +02:00
parent b4827c2b5e
commit 19e9ed330d
2 changed files with 44 additions and 2 deletions

View File

@@ -21,6 +21,17 @@ func main() {
helloServiceHandler := hero.Handler(helloService)
app.Get("/service/{to:string}", helloServiceHandler)
// 3
hero.Register(func(ctx iris.Context) (form LoginForm) {
// it binds the "form" with a
// x-www-form-urlencoded form data and returns it.
ctx.ReadForm(&form)
return
})
loginHandler := hero.Handler(login)
app.Post("/login", loginHandler)
// http://localhost:8080/your_name
// http://localhost:8080/service/your_name
app.Run(iris.Addr(":8080"))
@@ -45,3 +56,12 @@ func (s *myTestService) SayHello(to string) string {
func helloService(to string, service Service) string {
return service.SayHello(to)
}
type LoginForm struct {
Username string `form:"username"`
Password string `form:"password"`
}
func login(form LoginForm) string {
return "Hello " + form.Username
}