MCPcopy
hub / github.com/gofiber/fiber / encodeSessionData

Method encodeSessionData

middleware/session/session.go:604–618  ·  view source on GitHub ↗

encodeSessionData encodes session data to raw bytes Parameters: - rawData: The raw byte data to encode. Returns: - error: An error if the encoding fails. Usage: err := s.encodeSessionData(rawData)

()

Source from the content-addressed store, hash-verified

602//
603// err := s.encodeSessionData(rawData)
604func (s *Session) encodeSessionData() ([]byte, error) {
605 byteBuffer := byteBufferPool.Get().(*bytes.Buffer) //nolint:forcetypeassert,errcheck // We store nothing else in the pool
606 defer byteBufferPool.Put(byteBuffer)
607 defer byteBuffer.Reset()
608 encCache := gob.NewEncoder(byteBuffer)
609 if err := encCache.Encode(&s.data.Data); err != nil {
610 return nil, fmt.Errorf("failed to encode session data: %w", err)
611 }
612 // Copy the bytes
613 // Copy the data in buffer
614 encodedBytes := make([]byte, byteBuffer.Len())
615 copy(encodedBytes, byteBuffer.Bytes())
616
617 return encodedBytes, nil
618}
619
620// absExpiration returns the session absolute expiration time or a zero time if not set.
621//

Callers 1

Calls 6

GetMethod · 0.65
PutMethod · 0.65
ResetMethod · 0.65
ErrorfMethod · 0.65
LenMethod · 0.65
BytesMethod · 0.65

Tested by

no test coverage detected