1
0
Эх сурвалжийг харах

httpd: add support for route undefined HEAD requests to GET handlers

HEAD responses will not include a body but the Content-Length will be
set as the equivalent GET request

Fixes #255
Nicola Murino 4 жил өмнө
parent
commit
743b350fdd

+ 2 - 4
httpd/router.go

@@ -22,6 +22,8 @@ func GetHTTPRouter() http.Handler {
 func initializeRouter(staticFilesPath string, enableWebAdmin bool) {
 func initializeRouter(staticFilesPath string, enableWebAdmin bool) {
 	router = chi.NewRouter()
 	router = chi.NewRouter()
 
 
+	router.Use(middleware.GetHead)
+
 	router.Group(func(r chi.Router) {
 	router.Group(func(r chi.Router) {
 		r.Get("/healthz", func(w http.ResponseWriter, r *http.Request) {
 		r.Get("/healthz", func(w http.ResponseWriter, r *http.Request) {
 			render.PlainText(w, r, "ok")
 			render.PlainText(w, r, "ok")
@@ -38,10 +40,6 @@ func initializeRouter(staticFilesPath string, enableWebAdmin bool) {
 			sendAPIResponse(w, r, nil, "Not Found", http.StatusNotFound)
 			sendAPIResponse(w, r, nil, "Not Found", http.StatusNotFound)
 		}))
 		}))
 
 
-		router.MethodNotAllowed(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
-			sendAPIResponse(w, r, nil, "Method not allowed", http.StatusMethodNotAllowed)
-		}))
-
 		router.Get("/", func(w http.ResponseWriter, r *http.Request) {
 		router.Get("/", func(w http.ResponseWriter, r *http.Request) {
 			http.Redirect(w, r, webUsersPath, http.StatusMovedPermanently)
 			http.Redirect(w, r, webUsersPath, http.StatusMovedPermanently)
 		})
 		})

+ 1 - 0
telemetry/router.go

@@ -15,6 +15,7 @@ import (
 func initializeRouter(enableProfiler bool) {
 func initializeRouter(enableProfiler bool) {
 	router = chi.NewRouter()
 	router = chi.NewRouter()
 
 
+	router.Use(middleware.GetHead)
 	router.Use(middleware.Recoverer)
 	router.Use(middleware.Recoverer)
 
 
 	router.Group(func(r chi.Router) {
 	router.Group(func(r chi.Router) {