```go for _, f := range c.afterResponse { if e := f(c, resp); e != nil { resp.Err = e } } ``` AfterResponse 目前的实现是,会固定遍历执行所有的 afterResponse,取最后一个非 nil error 即,即使中间的返回错误,还是会继续执行后续的 这个是不是跟中间件实践中一般的理解不一致,一般会认为第一个返回 error 的就会终止?