mirror of
https://github.com/gofiber/fiber.git
synced 2025-07-11 21:18:07 +00:00
updated case to handle binary data
This commit is contained in:
parent
71c75ae998
commit
0d06e7ea90
6
ctx.go
6
ctx.go
@ -22,6 +22,7 @@ import (
|
||||
"sync"
|
||||
"text/template"
|
||||
"time"
|
||||
"unicode/utf8"
|
||||
|
||||
"github.com/gofiber/utils/v2"
|
||||
"github.com/valyala/bytebufferpool"
|
||||
@ -451,6 +452,11 @@ func (c *DefaultCtx) Cookie(cookie *Cookie) {
|
||||
// Make copies or use the Immutable setting to use the value outside the Handler.
|
||||
func (c *DefaultCtx) Cookies(key string, defaultValue ...string) string {
|
||||
value := c.app.getString(c.fasthttp.Request.Header.Cookie(key))
|
||||
// If the value looks like binary data, return it as-is
|
||||
if len(value) > 0 && !utf8.ValidString(value) {
|
||||
fmt.Println("Detected non-UTF8 cookie value, returning raw bytes")
|
||||
return value
|
||||
}
|
||||
return defaultString(c.sanitizeCookieValue(value), defaultValue)
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user