mirror of
https://github.com/AynaLivePlayer/AynaLivePlayer.git
synced 2025-12-06 18:32:50 +08:00
34 lines
697 B
Go
34 lines
697 B
Go
package util
|
|
|
|
import (
|
|
"bytes"
|
|
"encoding/json"
|
|
)
|
|
|
|
func MarshalUnescape(v interface{}) (string, error) {
|
|
bf := bytes.NewBuffer([]byte{})
|
|
jsonEncoder := json.NewEncoder(bf)
|
|
jsonEncoder.SetEscapeHTML(false)
|
|
err := jsonEncoder.Encode(v)
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
return bf.String(), nil
|
|
}
|
|
|
|
func MarshalIndentUnescape(v interface{}, prefix, indent string) (string, error) {
|
|
bf := bytes.NewBuffer([]byte{})
|
|
jsonEncoder := json.NewEncoder(bf)
|
|
jsonEncoder.SetEscapeHTML(false)
|
|
err := jsonEncoder.Encode(v)
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
var buf bytes.Buffer
|
|
err = json.Indent(&buf, bf.Bytes(), prefix, indent)
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
return buf.String(), nil
|
|
}
|