beego的路由機(jī)制

基本 GET 路由

beego.Get("/",func(ctx *context.Context){
     ctx.Output.Body([]byte("hello world"))
})

基本 POST 路由

beego.Post("/alice",func(ctx *context.Context){
     ctx.Output.Body([]byte("bob"))
})

注冊一個(gè)可以響應(yīng)任何 HTTP 的路由

beego.Any("/foo",func(ctx *context.Context){
     ctx.Output.Body([]byte("bar"))
})

自定義方法及 RESTful 規(guī)則

beego.Router("/api/list",&RestController{},"*:ListFood")
beego.Router("/api/create",&RestController{},"post:CreateFood")
beego.Router("/api/update",&RestController{},"put:UpdateFood")
beego.Router("/api/delete",&RestController{},"delete:DeleteFood")

以下是多個(gè) HTTP Method 指向同一個(gè)函數(shù)的示例:

beego.Router("/api",&RestController{},"get,post:ApiFunc")

以下是不同的 method 對應(yīng)不同的函數(shù),通過 ; 進(jìn)行分割的示例:

beego.Router("/simple",&SimpleController{},"get:GetFunc;post:PostFunc")

自動(dòng)匹配

    beego.InsertFilter("/back/achievement/*", beego.BeforeRouter, func(ctx *context.Context) { //路由過濾
        _, ok := ctx.Input.Session("type").(string)
        if !ok {
            ctx.Redirect(302, "/back/backlogin")
        }
    })
    back := beego.NewNamespace("back",
        beego.NSInclude(
            &backstage.LoginController{},
            &backstage.IndexController{},
            &backstage.ScroeController{},
            &backstage.IdiomController{},
            &backstage.ItemController{},
            &backstage.AdminController{},
            &backstage.TipsController{},
        ),
    )
    beego.AddNamespace(back)
//后臺登陸
//@router /backlogin [get]
func (this *LoginController)Login()  {
    this.TplName = "backstage/login.html"
}
//@router /leavelogin [get]
func (this *LoginController)LeaveLogin()  {
    this.DestroySession()
    this.TplName = "backstage/login.html"
}

訪問方式 http://localhost:9999/back/leavelogin

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容