go-macaron / binding

Package binding is a middleware that provides request data binding and validation for Macaron.
Apache License 2.0
23 stars 17 forks source link

建议可以自定义默认的errorHandler #26

Closed corelchen closed 4 years ago

corelchen commented 5 years ago

常见的一种开发场景是作为api服务,有统一的数据返回格式,比如:

{"code":0,"message":"成功","data":{}}

binding默认的errorHandler返回的数据格式不符合要求,现在也不能修改默认的errorHandler实现方法。binding虽然提供了两种自定义错误处理机制,但一种是需要为每一个绑定的struct定义Error(ctx *macaron.Context, errs binding.Errors)方法,比较麻烦,另一种是使用 binding.BindIgnErr 函数来忽略对错误的自动处理,然后再定义一个中间件统一处理binding的错误,同样需要在调用binding.BindIgnErr中间件之后再加上这个自定义中间件的调用,也有点麻烦。 所以,请问是否可以增加自定义默认的errorHandler的功能? 最后说一句,非常喜欢macaron和gogs,感谢Unkown为开源社区的无私奉献。

unknwon commented 4 years ago

Fixed by #31.