golang json marshal 将标签转换为 utf 符号

如何防止转换<p> 为\u003cp\u003ein json.Marshal?


package main


import (

    "encoding/json"

    "fmt"

)


type User struct {

    Name string

}


func main() {

    user := User{Name: "<p>Frank</p>"}

    b, err := json.Marshal(&user)

    if err != nil {

        fmt.Println(err)

        return

    }

    fmt.Println(user)

    fmt.Println(string(b))

}

它输出:


{<p>Frank</p>}

{"Name":"\u003cp\u003eFrank\u003c/p\u003e"}


明月笑刀无情
浏览 272回答 1
1回答

慕尼黑的夜晚无繁华

这已经在这个问题中解释过了。简而言之 - 如果您需要保留这些字符,您可以创建自己的 Marshaller 实现,但即使对 json 输出进行编码也将是一个完全有效的输出,不应破坏任何内容。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go