Merge pull request #274 from router-for-me/log

fix: detect HTML error bodies without text/html content type
This commit is contained in:
Luis Pater
2025-11-19 17:40:06 +08:00
committed by GitHub

View File

@@ -323,7 +323,14 @@ func formatAuthInfo(info upstreamRequestLog) string {
}
func summarizeErrorBody(contentType string, body []byte) string {
if strings.Contains(strings.ToLower(contentType), "text/html") {
isHTML := strings.Contains(strings.ToLower(contentType), "text/html")
if !isHTML {
trimmed := bytes.TrimSpace(bytes.ToLower(body))
if bytes.HasPrefix(trimmed, []byte("<!doctype html")) || bytes.HasPrefix(trimmed, []byte("<html")) {
isHTML = true
}
}
if isHTML {
if title := extractHTMLTitle(body); title != "" {
return title
}