本文整理汇总了Golang中github.com/cosiner/zerver.Response.ReportInternalServerError方法的典型用法代码示例。如果您正苦于以下问题:Golang Response.ReportInternalServerError方法的具体用法?Golang Response.ReportInternalServerError怎么用?Golang Response.ReportInternalServerError使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/cosiner/zerver.Response
的用法示例。
在下文中一共展示了Response.ReportInternalServerError方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: SendErr
func SendErr(resp zerver.Response, err error) {
switch err := err.(type) {
case httperrs.Error:
resp.ReportStatus(err.Code())
if err.Code() < int(httperrs.Server) {
OnErrLog(resp.Send(KeyError, err.Error()))
return
}
default:
resp.ReportInternalServerError()
}
Logger.Errorln(err.Error())
}
示例2: SendErr
func SendErr(resp zerver.Response, err error) {
switch err := errors.Unwrap(err).(type) {
case httperrs.Error:
resp.ReportStatus(err.Code())
if err.Code() < int(httperrs.Server) {
if err := resp.Send(KeyError, err.Error()); err != nil {
Logger.Errorln(err.Error())
}
return
}
default:
resp.ReportInternalServerError()
}
Logger.Errorln(err.Error())
}
示例3: Filter
func (r *Recovery) Filter(req zerver.Request, resp zerver.Response, chain zerver.FilterChain) {
defer func() {
e := recover()
if e == nil || r.NoStack {
return
}
resp.ReportInternalServerError()
buffer := bytes.NewBuffer(make([]byte, 0, r.Bufsize))
fmt.Fprint(buffer, e)
buf := buffer.Bytes()
runtime.Stack(buf[len(buf):cap(buf)], false)
req.Logger().Errorln(unsafe2.String(buf[:cap(buf)]))
}()
chain(req, resp)
}