在go语言gin框架中如何处理JSON、ProtoBuf数据格式示例代码
Go  /  管理员 发布于 1年前   483
现在不管是什么语言处理前后端数据交互大多数都是以json格式了,本文中go语言也一样,
我们知道GRPC的数据交互是以ProtoBuf格式的,下面我们来看看!
Go是如何处理json格式数据?如何处理ProtoBuf格式数据的?
代码示例:
package main
import (
"net/http"
"StudyGin/HolleGin/ch07/proto"
"github.com/gin-gonic/gin"
)
func moreJSON(c *gin.Context) {
var msg struct {
Nmae string `json:"UserName"`
Message string
Number int
}
msg.Nmae = "zongscan.com"
msg.Message = "This is a test of JSOM"
msg.Number = 1
c.JSON(http.StatusOK, msg)
}
//使用ProtoBuf
func returnProto(c *gin.Context) {
course := []string{"python", "golang", "php", "c++"}
user := &proto.Teacher{
Name: "ice_moss",
Course: course,
}
//返回protobuf
c.ProtoBuf(http.StatusOK, user)
}
//使用结构体和JSON对结构体字段进行标签,使用protobuf返回值
func main() {
router := gin.Default()
router.GET("/moreJSON", moreJSON)
router.GET("/someProtoBuf", returnProto)
router.Run(":8083")
}
测试一下
访问1:
http://localhost:8083/moreJSON
返回:
{"UserName":"zongscan.com","Message":"This is a test of JSOM","Number":1}
访问2:
http://localhost:8083//someProtoBuf
返回:会将someProtoBuf返回的数据下载
如果是使用GRPC的话,直接使用GRPC中的方法将数据接收解析出来就ok了
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号