beego設置靜態路由的幾種方法
阿新 • • 發佈:2019-04-03
github icp urn 靜態路由 ignore hub code ets url 方法一:
main.go裏:
beego.SetStaticPath("tests_url", "tests") //第一個是訪問的路徑,第二個是根下目錄
方法二:
package main import ( _ "./routers" "github.com/astaxie/beego" "github.com/astaxie/beego/context" //註意:是這個context "log" "net/http" "strings" ) func ignoreStaticPath() { //過濾器 beego.InsertFilter("/", beego.BeforeRouter, TransparentStatic) beego.InsertFilter("/*", beego.BeforeRouter, TransparentStatic) } func TransparentStatic(ctx *context.Context){ orpath := ctx.Request.URL.Path log.Println(orpath) //如果url中有api,則取消靜態路由重定向 if strings.Index(orpath, "api") >= 0 { return } http.ServeFile(ctx.ResponseWriter, ctx.Request, "static/html/" + orpath) } func main() { ignoreStaticPath() beego.Run() }
註意:導入的是github.com/astaxie/beego/context,而不是context
beego設置靜態路由的幾種方法