概述
gin框架02--json渲染
- 介绍
- json 渲染案例
- 注意事项
- 说明
介绍
Gin 框架对json支持的较晚上,开发人员可以按需选择多种 json 格式返回。
使用 AsciiJSON 生成具有转义的非 ASCII 字符的 ASCII-only JSON, 使用 PureJSON 输出纯json且不会转码,使用 IndentedJSON 输出可以缩进的 json信息。更多详细内容可以在 context.go 中寻找答案。
json 渲染案例
案例:
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
type user struct {
ID int `json:"id"`
Name string `json:"name"`
Age int `json:"age"`
}
func main() {
r := gin.Default()
r.GET("/someJson", func(c *gin.Context) {
data := map[string]interface{}{
"lang": "GO语言",
"tag": "<br>",
}
c.AsciiJSON(http.StatusOK, data)
})
r.GET("/pureJson", func(c *gin.Context) {
c.PureJSON(200, gin.H{
"message": "<b> Hello, World!</b>",
})
})
r.GET("/indentJson", func(c *gin.Context) {
users := []user{{ID: 123, Name: "张三", Age: 23}, {ID: 124, Name: "李四", Age: 24}}
c.IndentedJSON(200, users)
})
r.Run(":8080")
}
测试:
AsciiJSON 输出
$ curl http://127.0.0.1:8080/someJson
{"lang":"GOu8bedu8a00","tag":"u003cbru003e"}
PureJSON 输出
$ curl http://127.0.0.1:8080/pureJson
{"message":"<b> Hello, World!</b>"}
IndentedJSON 输出
$ curl http://127.0.0.1:8080/indentJson
[
{
"id": 123,
"name": "张三",
"age": 23
},
{
"id": 124,
"name": "李四",
"age": 24
}
]
注意事项
- 除了上述 AsciiJSON、IndentedJSON 和 PureJSON 外, 还有 JSON、XML、YAML、ProtoBuf、String 等。详细内容可参考 context.go
说明
gin官方文档 AsciiJSON
Golang Gin 实战(八)| JSON渲染输出
github gin
最后
以上就是感性外套为你收集整理的gin框架02--json渲染介绍json 渲染案例注意事项说明的全部内容,希望文章能够帮你解决gin框架02--json渲染介绍json 渲染案例注意事项说明所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复