mirror of
https://github.com/weloe/token-go.git
synced 2025-10-13 03:03:41 +08:00
27 lines
491 B
Go
27 lines
491 B
Go
package persist
|
|
|
|
import "encoding/json"
|
|
|
|
type JsonSerializer struct {
|
|
}
|
|
|
|
func NewJsonSerializer() *JsonSerializer {
|
|
return &JsonSerializer{}
|
|
}
|
|
|
|
func (j *JsonSerializer) Serialize(data interface{}) ([]byte, error) {
|
|
serializedData, err := json.Marshal(data)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return serializedData, nil
|
|
}
|
|
|
|
func (j *JsonSerializer) UnSerialize(data []byte, result interface{}) error {
|
|
err := json.Unmarshal(data, &result)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
return nil
|
|
}
|