From 7a4b89d2fb867f7075279949aa23b8221167998d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=A5=A5=E8=B6=85?= Date: Sat, 19 Nov 2022 17:35:23 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BC=93=E5=AD=98Header=E4=B8=AD=E5=BF=BD?= =?UTF-8?q?=E7=95=A5Set-Cookie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/nodes/http_writer.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/internal/nodes/http_writer.go b/internal/nodes/http_writer.go index 07a905b..a86e1f9 100644 --- a/internal/nodes/http_writer.go +++ b/internal/nodes/http_writer.go @@ -326,6 +326,9 @@ func (this *HTTPWriter) PrepareCache(resp *http.Response, size int64) { // 写入Header var headerBuf = utils.SharedBufferPool.Get() for k, v := range this.Header() { + if k == "Set-Cookie" { + continue + } for _, v1 := range v { if this.isPartial && k == "Content-Type" && strings.Contains(v1, "multipart/byteranges") { continue @@ -646,6 +649,9 @@ func (this *HTTPWriter) PrepareCompression(resp *http.Response, size int64) { // 写入Header var headerBuffer = utils.SharedBufferPool.Get() for k, v := range this.Header() { + if k == "Set-Cookie" { + continue + } for _, v1 := range v { _, err = headerBuffer.Write([]byte(k + ":" + v1 + "\n")) if err != nil { @@ -968,6 +974,10 @@ func (this *HTTPWriter) finishWebP() { if webpCacheWriter != nil { // 写入Header for k, v := range this.Header() { + if k == "Set-Cookie" { + continue + } + // 这里是原始的数据,不需要内容编码 if k == "Content-Encoding" || k == "Transfer-Encoding" { continue @@ -1183,6 +1193,9 @@ func (this *HTTPWriter) finishRequest() { // 计算Header长度 func (this *HTTPWriter) calculateHeaderLength() (result int) { for k, v := range this.Header() { + if k == "Set-Cookie" { + continue + } for _, v1 := range v { result += len(k) + 1 /**:**/ + len(v1) + 1 /**\n**/ }