代码拉取完成,页面将自动刷新
app.SetMethodNotAllowedHandle(func(ctx dotweb.Context){
ctx.Redirect(301, "/")
})
func HandlerFunc(w http.ResponseWriter, r *http.Request){
w.Write([]byte("go raw http func"))
}
server.RegisterHandlerFunc("GET", "/h/func", HandlerFunc)
func HandlerFunc(w http.ResponseWriter, r *http.Request){
w.Write([]byte("go raw http func"))
}
server.RegisterHandlerFunc("GET", "/h/func", HandlerFunc)
app.Use(accesslog.Middleware())
server.GET("/", Index).Use(accesslog.Middleware())
func TestLog(ctx dotweb.Context) error {
ctx.HttpServer().Logger().Info(dotweb.LogTarget_Default, "test log")
return ctx.WriteString("log page")
}
func main() {
fmt.Println(cryptos.GetRandString(10))
}
func main() {
app := dotweb.Classic("/home/logs/wwwroot/")
// if use this, all router will auto add "HEAD" method support
// default is false
app.HttpServer.SetEnabledAutoHEAD(true)
app.HttpServer.GET("/index", func(ctx dotweb.Context) error{
flag := ctx.HttpServer().Router().MatchPath(ctx, "/index")
return ctx.WriteString("welcome to my first web!" + ctx.RouterNode().Path() + " - " + fmt.Sprint(flag))
})
err := app.StartServer(80)
fmt.Println("dotweb.StartServer error => ", err)
}
<?xml version="1.0" encoding="UTF-8"?>
<config>
<set key="set1" value="1" />
<set key="set2" value="2" />
<set key="set3" value="3" />
<set key="set4" value="4" />
</config>
err := app.Config.IncludeConfigSet("/home/your/user-conf.xml", config.ConfigType_XML)
value := ctx.ConfigSet().GetString("set1")
server.RegisterServerFile(dotweb.RouteMethod_POST, "/dst/*", "/home/www/")
func main() {
app := dotweb.Classic("/home/logs/wwwroot/")
// if use this, all router will auto add "HEAD" method support
// default is false
app.HttpServer.SetEnabledAutoHEAD(true)
app.HttpServer.GET("/index", func(ctx dotweb.Context) error{
return ctx.WriteString("welcome to my first web!")
})
err := app.StartServer(80)
fmt.Println("dotweb.StartServer error => ", err)
}
func main() {
app := dotweb.Classic("/home/logs/wwwroot/")
// deal slow response, use default handler
// default Handler will write timeout-response in dotweb's log file
// also you can implement your own handlers, like write logs with http api
app.UseTimeoutHook(dotweb.DefaultTimeoutHookHandler, time.Second * 10)
app.HttpServer.GET("/index", func(ctx dotweb.Context) error{
return ctx.WriteString("welcome to my first web!")
})
//begin server
err := app.StartServer(80)
fmt.Println("dotweb.StartServer error => ", err)
}
app.HttpServer.ServerFile("/*", "D:/gotmp")
app.HttpServer.SetEnabledStaticFileMiddleware(true)
app.HttpServer.SetBinder(newUserBinder())
app.HttpServer.SetEnabledAutoOPTIONS(true)
2018-09-19 15:44:42.8189 [DEBUG] [router.go:437] DotWeb:Router:RegisterRoute success [GET] [/] [main.Index]
2018-09-19 15:44:42.8199 [DEBUG] [router.go:462] DotWeb:Router:RegisterRoute AutoHead success [HEAD] [/] [main.Index]
2018-09-19 15:44:42.8199 [DEBUG] [router.go:474] DotWeb:Router:RegisterRoute AutoOPTIONS success [OPTIONS] [/] [main.Index]
app.HttpServer.Renderer().RegisterTemplateFunc("echo", func(x string) interface{}{
return "echo:" + x
})
app.UseTimeoutHook(dotweb.DefaultTimeoutHookHandler, time.Second * 2)
func AppMock() dotweb.Mock{
m := dotweb.NewStandardMock()
m.RegisterString("/", "mock data")
return m
}
app.SetMock(AppMock())
sessionConf := session.NewDefaultRedisConfig("redis://10.10.0.1:6322/1")
sessionConf.BackupServerUrl = "redis://10.10.0.1:6379/1"
app.HttpServer.GET("/index", func(ctx dotweb.Context) error{
_, err := ctx.WriteString("welcome to my first web!")
return err
})
简化为
app.HttpServer.GET("/index", func(ctx dotweb.Context) error{
return ctx.WriteString("welcome to my first web!")
})
<appset>
<set key="email-host" value="mail.xx.com" />
<set key="email-account" value="username" />
<set key="email-password" value="password" />
<set key="limit-per-ip" value="10" />
</appset>
//查询方式
ctx.AppSetConfig().GetString("email-host"))
ctx.AppSetConfig().GetInt("limit-per-ip"))
func InitRoute(server *dotweb.HttpServer) {
server.Router().GET("/", Index)
server.Router().GET("/use", Index).Use(NewAccessFmtLog("Router-use"))
g := server.Group("/group").Use(NewAccessFmtLog("group"))
g.GET("/", Index)
g.GET("/use", Index).Use(NewAccessFmtLog("group-use"))
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。