8
如果我定义了一个路由 GET /foo/bar
如果我访问 POST /foo/bar
按理来说,这个情况属于 notAllowed
如果我访问 GET /foo/bars
按理来说,这个情况属于 notFound
所以我访问时路由时,既可能出现 notAllowed
, 也有可能会出现 notFound
, 所以这两种情况可以同时存在
但是在代码中,两个方法都新建了 patRouter
,导致只会有一个 patRouter
生效,不合理
func WithNotFoundHandler(handler http.Handler) RunOption {
rt := router.NewRouter() // 新建
rt.SetNotFoundHandler(handler)
return WithRouter(rt)
}
func WithNotAllowedHandler(handler http.Handler) RunOption {
rt := router.NewRouter() // 新建
rt.SetNotAllowedHandler(handler)
return WithRouter(rt)
}