# 错误处理
您可以在发生特定的
http
错误代码时定义自己的处理程序。错误代码是大于或等于400的http
状态代码,如404
未找到和500
内部服务器。示例代码:
# 错误处理示例
package main
import "github.com/kataras/iris/v12"
func main() {
app := iris.New()
//报404错误,有下面的notFound处理
app.OnErrorCode(iris.StatusNotFound, notFound)
//报500错误,有下面的internalServerError处理
app.OnErrorCode(iris.StatusInternalServerError, internalServerError)
// 注册一个处理函数处理HTTP错误codes >=400:
// app.OnAnyErrorCode(handler)
app.Get("/", index)
app.Run(iris.Addr(":8080"))
}
func notFound(ctx iris.Context) {
// 当http.status=400 时向客户端渲染模板$views_dir/errors/404.html
ctx.View("errors/404.html")
}
//当出现错误的时候,再试一次
func internalServerError(ctx iris.Context) {
ctx.WriteString("Oups something went wrong, try again")
}
func index(ctx iris.Context) {
ctx.View("index.html")
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27