У меня есть этот middleware func:
func errorMiddleware(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
defer func() {
if err := recover(); err != nil {
log.Error("Caught error in defer/recover middleware: ", err)
w.WriteHeader(http.StatusInternalServerError)
json.NewEncoder(w).Encode(struct {
ID string
}{
err.Error(),
})
}
}()
next.ServeHTTP(w, r)
})
}
Я использую его так:
router := mux.NewRouter()
router.Use(errorMiddleware)
однако я получаю ошибку компиляции, он говорит:
![enter image description here](https://i.stack.imgur.com/7uMQ1.png)
Кто-нибудь знает, что это такое?Я просто пытаюсь преобразовать ошибку в строку, в конечном итоге, сериализовать ее для клиента и т. Д.