mirror of
https://github.com/kataras/iris.git
synced 2025-01-24 11:11:03 +01:00
48 lines
819 B
Go
48 lines
819 B
Go
|
package main
|
||
|
|
||
|
import (
|
||
|
"github.com/kataras/iris"
|
||
|
"github.com/kataras/iris/hero"
|
||
|
)
|
||
|
|
||
|
func main() {
|
||
|
|
||
|
app := iris.New()
|
||
|
|
||
|
// 1
|
||
|
helloHandler := hero.Handler(hello)
|
||
|
app.Get("/{to:string}", helloHandler)
|
||
|
|
||
|
// 2
|
||
|
hero.Register(&myTestService{
|
||
|
prefix: "Service: Hello",
|
||
|
})
|
||
|
|
||
|
helloServiceHandler := hero.Handler(helloService)
|
||
|
app.Get("/service/{to:string}", helloServiceHandler)
|
||
|
|
||
|
// http://localhost:8080/your_name
|
||
|
// http://localhost:8080/service/your_name
|
||
|
app.Run(iris.Addr(":8080"))
|
||
|
}
|
||
|
|
||
|
func hello(to string) string {
|
||
|
return "Hello " + to
|
||
|
}
|
||
|
|
||
|
type Service interface {
|
||
|
SayHello(to string) string
|
||
|
}
|
||
|
|
||
|
type myTestService struct {
|
||
|
prefix string
|
||
|
}
|
||
|
|
||
|
func (s *myTestService) SayHello(to string) string {
|
||
|
return s.prefix + " " + to
|
||
|
}
|
||
|
|
||
|
func helloService(to string, service Service) string {
|
||
|
return service.SayHello(to)
|
||
|
}
|