Beego 的几个小 Tips

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

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

自定义错误页面

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

1
2
3
4
5
6
7
8
9
10
// 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)
}

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

1
2
3
4
5
6
7
8
9
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

感谢作者:ipfans's Blog

查看原文:Beego 的几个小 Tips

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

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