一个使用Go语言开发的web框架。
go get github.com/karldoenitz/Tigo/...
package main
import (
"github.com/karldoenitz/Tigo/TigoWeb"
"net/http"
)
// handler
type DemoHandler struct {
TigoWeb.BaseHandler
}
func (demoHandler *DemoHandler) Get() {
demoHandler.ResponseAsText("Hello Demo!")
}
// 中间件
func Authorize(next http.HandlerFunc) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
// 此处授权认证逻辑
next.ServeHTTP(w, r)
}
}
// 路由
var urls = []TigoWeb.Router{
{"/demo", &DemoHandler{}, []TigoWeb.Middleware{Authorize}},
}
func main() {
application := TigoWeb.Application{
IPAddress: "127.0.0.1",
Port: 8888,
UrlRouters: urls,
}
application.Run()
}
打开终端,进入代码目录,运行如下命令:
go build main.go
编译完成后,会有一个可执行文件main
,运行如下命令:
./main
终端会有如下显示:
INFO: 2018/07/09 15:02:36 Application.go:22: Server run on: 0.0.0.0:8888
打开浏览器访问地址http://127.0.0.1:8888/hello-tigo
,就可以看到Hello Tigo。
这个框架在Linux版本的 CubeBackup for Google Apps 中有所使用。
如果你对此框架感兴趣,可以加入我们一同开发。