diff --git a/smalltrip/problem/problem.go b/smalltrip/problem/problem.go index e8f078d..7df9dca 100644 --- a/smalltrip/problem/problem.go +++ b/smalltrip/problem/problem.go @@ -5,6 +5,7 @@ import ( "fmt" "net/http" "slices" + "text/template" ) type Problem interface { @@ -52,8 +53,25 @@ func New(opts ...Option) RegisteredProblem { } var ( - DefaultTypeURI = "about:blank" - DefaultHandler = HandlerAll + DefaultTypeURI = "about:blank" + DefaultTemplate = template.Must(template.New("x-smalltrip-problem-template").Parse(` + + +
+{{ .Type }}
{{ .Detail }}
+ {{if .Instance}} +Instance: {{ .Instance }}
+ {{end}} +{{printf "%#v" .}}
+
+
+`))
+ DefaultHandler = HandlerMiddleware(HandlerBrowser(DefaultTemplate))
)
func (p RegisteredProblem) Type() string {