mirror of
https://github.com/foomo/sesamy-go.git
synced 2025-10-16 12:35:43 +00:00
feat: add session id middleware
This commit is contained in:
parent
20e55ad210
commit
c22b610038
@ -8,6 +8,21 @@ import (
|
||||
"github.com/pkg/errors"
|
||||
)
|
||||
|
||||
func MPv2MiddlewarSessionID(trackingID string) MPv2Middleware {
|
||||
return func(next MPv2Handler) MPv2Handler {
|
||||
return func(r *http.Request, payload *mpv2.Payload[any]) error {
|
||||
value, err := session.ParseGASessionID(r, trackingID)
|
||||
if err != nil && !errors.Is(err, http.ErrNoCookie) {
|
||||
return errors.Wrap(err, "failed to parse client cookie")
|
||||
}
|
||||
if value != "" {
|
||||
payload.SessionID = value
|
||||
}
|
||||
return next(r, payload)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func MPv2MiddlewarClientID(next MPv2Handler) MPv2Handler {
|
||||
return func(r *http.Request, payload *mpv2.Payload[any]) error {
|
||||
value, err := session.ParseGAClientID(r)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user