Beego的几个小Tips

kevin · · 3555 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

Beego框架不错,个人比较喜欢,关键是还有一些开发工具很实用,封装了很多实现,不需要自己做很多工作,在不考虑效率的前提下,都是可以接受的范畴。

自定义错误页面

Beego默认自己带了一些错误页面,在error.go文件中进行了定义。以404为例:

// show 404 notfound error.
func NotFound(rw http.ResponseWriter, r *http.Request) {
    t, _ := template.New("beegoerrortemp").Parse(errtpl)
    data := make(map[string]interface{})
    data["Title"] = "Page Not Found"
    data["Content"] = template.HTML("<br>The page you have requested has flown the coop." +
        "<br>Perhaps you are here because:" +
        "<br><br><ul>" +
        "<br>The page has moved" +
        "<br>The page no longer exists" +
        "<br>You were looking for your puppy and got lost" +
        "<br>You like 404 pages" +
        "</ul>")
    data["BeegoVersion"] = VERSION
    //rw.WriteHeader(http.StatusNotFound)
    t.Execute(rw, data)
}

其实自己做一个修改也很容易:

func page_not_found(rw http.ResponseWriter, r *http.Request){
    t,_:= template.New("404.html").ParseFiles(beego.ViewsPath+"/404.html")
    data :=make(map[string]interface{})
    data["content"] = "page not found"
    t.Execute(rw, data)
}

func main() {
    beego.Errorhandler("404",page_not_found)
    beego.Router("/", &controllers.MainController{})
    beego.Run()
}

Server字段的修改

HTTP返回头中的Server总是显示的是BeegoServer,太不专业了,定义在config.go文件中:

BeegoServerName = "beegoServer"

我最初是fork了一个repo改,后来发现,只需要在app.conf文件中定义一下就可以了:

BeegoServerName = ACGSOSERVER

这样Server这个字段就更改掉了,其他的属性也可以用这种方式定义掉。


有疑问加站长微信联系(非本文作者)

本文来自:ipfans's Blog

感谢作者:kevin

查看原文:Beego的几个小Tips

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3555 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传