aboutsummaryrefslogtreecommitdiff
path: root/cookie.go
diff options
context:
space:
mode:
authorGravatar Erik Dubbelboer <erik@dubbelboer.com> 2018-08-29 22:55:21 +0800
committerGravatar Erik Dubbelboer <erik@dubbelboer.com> 2018-08-29 22:55:21 +0800
commit373357d2d47d78c16c72ac4de4046da33585239c (patch)
treebebddf71b0954df93e9a5513eb73b1594e55ca92 /cookie.go
parentConfiguration for automatic retry for idempotent calls (diff)
downloadfasthttp-373357d2d47d78c16c72ac4de4046da33585239c.tar.gz
fasthttp-373357d2d47d78c16c72ac4de4046da33585239c.tar.bz2
fasthttp-373357d2d47d78c16c72ac4de4046da33585239c.zip
Try the same formats as net/http for cookie expire
See: https://github.com/golang/go/blob/00379be17e63a5b75b3237819392d2dc3b313a27/src/net/http/cookie.go#L133-L135 Fixes #175
Diffstat (limited to 'cookie.go')
-rw-r--r--cookie.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/cookie.go b/cookie.go
index c383d0b..bce5d2c 100644
--- a/cookie.go
+++ b/cookie.go
@@ -278,9 +278,14 @@ func (c *Cookie) ParseBytes(src []byte) error {
switch string(kv.key) {
case "expires":
v := b2s(kv.value)
+ // Try the same two formats as net/http
+ // See: https://github.com/golang/go/blob/00379be17e63a5b75b3237819392d2dc3b313a27/src/net/http/cookie.go#L133-L135
exptime, err := time.ParseInLocation(time.RFC1123, v, time.UTC)
if err != nil {
- return err
+ exptime, err = time.Parse("Mon, 02-Jan-2006 15:04:05 MST", v)
+ if err != nil {
+ return err
+ }
}
c.expire = exptime
case "domain":