fix: invoke.go — forward Content-Length to proxied request (form POST fix)

Without ContentLength, Python BaseHTTPRequestHandler read 0 bytes from body.
operator v0.1.37, python runtime v0.1.4, pg-table-writer HTML form
This commit is contained in:
Naeel
2026-03-19 08:58:35 +03:00
parent 2c194f6a7f
commit d286d92a05
9 changed files with 213 additions and 39 deletions
+4 -1
View File
@@ -66,10 +66,13 @@ func (h *Handler) InvokeFunction(w http.ResponseWriter, r *http.Request) {
return
}
// Пробрасываем Content-Type если есть
// Пробрасываем Content-Type и Content-Length если есть.
// Content-Length обязателен: Python BaseHTTPRequestHandler читает тело
// ровно столько байт, сколько указано в заголовке; без него body = пусто.
if ct := r.Header.Get("Content-Type"); ct != "" {
proxyReq.Header.Set("Content-Type", ct)
}
proxyReq.ContentLength = r.ContentLength
resp, err := httpClient.Do(proxyReq)
if err != nil {