[TOC] # 跳转 ~~~ func (this *AdminController) Post() { //跳转 this.Redirect("/", 302) this.Ctx.WriteString("-------test----------") } ~~~ # 中止此请求并抛出异常 `this.Abort("401")`之后的代码不会再执行 ~~~ func (this *AdminController) Post() { this.Abort("401") this.Ctx.WriteString("-------test----------") } ~~~ 你可以自定义一些404页面,具体看框架文档 # 自定义字符串错误处理 beego 更加人性化的还有一个设计就是支持用户自定义字符串错误类型处理函数,例如下面的代码,用户注册了一个数据库出错的处理页面: ~~~ func dbError(rw http.ResponseWriter, r *http.Request){ t,_:= template.New("dberror.html").ParseFiles(beego.BConfig.WebConfig.ViewsPath+"/dberror.html") data :=make(map[string]interface{}) data["content"] = "database is now down" t.Execute(rw, data) } func main() { beego.ErrorHandler("dbError",dbError) beego.Router("/", &controllers.MainController{}) beego.Run() } ~~~ 一旦在入口注册该错误处理代码,那么你可以在任何你的逻辑中遇到数据库错误调用`this.Abort("dbError")`来进行异常页面处理。