server.go
func (mux *ServerMux) handleError(ctx *Context, err error) bool {
	if err == nil {
		return false
	}
	if e, ok := err.(Error); ok {
		ctx.Response.Status = e.Status
		ctx.Response.Data = e
		return true
	}
	if ctx.Response.Status == http.StatusOK {
		ctx.Response.Status = http.StatusInternalServerError
	}
	ctx.Response.Data = err.Error()
	mux.err(err)
	return true
}
func (mux *ServerMux) handleError(ctx *Context, err error) bool {
	if err == nil {
		return false
	}
	if e, ok := err.(Error); ok {
		ctx.Response.Status = e.Status
		ctx.Response.Data = e
		return true
	}
	if ctx.Response.Status == http.StatusOK {
		ctx.Response.Status = http.StatusInternalServerError
	}
	ctx.Response.Data = err.Error()
	mux.err(err)
	return true
}
// handleError tests the context `Error` and assign it to response.