15864: Support X-Http-Method-Override header used by Python SDK.
authorTom Clegg <tclegg@veritasgenetics.com>
Fri, 29 Nov 2019 07:38:35 +0000 (02:38 -0500)
committerTom Clegg <tclegg@veritasgenetics.com>
Fri, 29 Nov 2019 07:38:35 +0000 (02:38 -0500)
Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tclegg@veritasgenetics.com>

lib/controller/router/router.go

index 47082197a01316f4db874b0989c836e7d4a0850f..cde6a8e32c40f67fa93abf695d629f8df8957274 100644 (file)
@@ -387,6 +387,10 @@ func (rtr *router) ServeHTTP(w http.ResponseWriter, r *http.Request) {
                r2 := *r
                r = &r2
                r.Method = m
+       } else if m = r.Header.Get("X-Http-Method-Override"); m != "" {
+               r2 := *r
+               r = &r2
+               r.Method = m
        }
        rtr.mux.ServeHTTP(w, r)
 }