【发布时间】:2014-11-27 20:49:51
【问题描述】:
我想知道是否有更好的方法来处理应用程序中的错误以进行调试。我想设置一个像“调试”这样的标志,它将显示函数返回的真实错误(例如从 sql 中返回的错误)。如果未设置,我希望它返回一般消息。
我在这里做了一些这样的工作: http://play.golang.org/p/YDeqVvRSMd
一般的想法是我将真正的错误和我的库存错误传递给一个函数,并检查是否设置了调试:
func ErrorMsg(debug, error_type error) map[string]interface{} {
var msg error
if Debug {
msg = debug
} else {
msg = error_type
}
err := map[string]interface{}{"error_message": msg}
return err
}
但是,这似乎是一个丑陋的解决方案。有没有更好的方法来做到这一点?
我还想返回一个 JSON 响应,这就是为什么它是一张地图。
【问题讨论】:
标签: json http error-handling go