2
beego 1.6 当需要某个接口 Reverse Proxy 到其他服务时,通过
beego.Handler("/proxy/*", reverseProxy)
增加 router,POST 之类带有 Body 的请求会在 router.go 643行
if r.Method != "GET" && r.Method != "HEAD" {
if BConfig.CopyRequestBody && !context.Input.IsUpload() {
context.Input.CopyBody(BConfig.MaxMemory)
}
context.Input.ParseFormOrMulitForm(BConfig.MaxMemory)
}
时,将 Body Close,导致 reverse proxy 给其他服务时,Body 为空,同时报错“http: proxy error: http: ContentLength=XXX with Body length 0” 的错误。
希望能加入一个某个逻辑,比如通过这样
beego.Proxy(h http.Handler)
来表明这个 endpoint 不需要 ParseFormOrMulitForm。