更新 proxy/handler.go
This commit is contained in:
@@ -198,18 +198,15 @@ func (h *ProxyHandler) rewriteContent(body []byte, targetURL, contentType, token
|
||||
func (h *ProxyHandler) readResponseBody(resp *http.Response) ([]byte, error) {
|
||||
var reader io.Reader = resp.Body
|
||||
|
||||
encoding := strings.ToLower(resp.Header.Get("Content-Encoding"))
|
||||
if strings.Contains(encoding, "gzip") {
|
||||
if resp.Header.Get("Content-Encoding") == "gzip" {
|
||||
gzReader, err := gzip.NewReader(resp.Body)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
if err == nil {
|
||||
defer gzReader.Close()
|
||||
reader = gzReader
|
||||
}
|
||||
defer gzReader.Close()
|
||||
reader = gzReader
|
||||
}
|
||||
|
||||
limitReader := io.LimitReader(reader, h.maxResponseSize)
|
||||
|
||||
return io.ReadAll(limitReader)
|
||||
}
|
||||
|
||||
@@ -217,7 +214,6 @@ func (h *ProxyHandler) setProxyHeaders(proxyReq, originalReq *http.Request) {
|
||||
headersToForward := []string{
|
||||
"Accept",
|
||||
"Accept-Language",
|
||||
"Accept-Encoding",
|
||||
"Cache-Control",
|
||||
}
|
||||
|
||||
@@ -227,6 +223,7 @@ func (h *ProxyHandler) setProxyHeaders(proxyReq, originalReq *http.Request) {
|
||||
}
|
||||
}
|
||||
|
||||
proxyReq.Header.Set("Accept-Encoding", "gzip")
|
||||
proxyReq.Header.Set("User-Agent", h.userAgent)
|
||||
proxyReq.Header.Del("X-Forwarded-For")
|
||||
proxyReq.Header.Del("X-Real-IP")
|
||||
|
||||
Reference in New Issue
Block a user