beego的学习 获取json并解析为对象

beego中,如果我输入一个json,怎么获取这个json并将其解析成对象?

 

之前学了beego中输出json,之后就想当然地以为:输入也不过如此,应该和spring mvc中和jersey中差不多,能自动映射为对象。

之后才发现完全不是这么一回事。根据官方的文档做,做出来的结果有些莫名其妙,完全没有弄明白是怎么解析的(感觉这个官方例子解释得不太好)。后来我尝试了很久,终于算是尝试出来了。

1.在配置文件app.conf中进行注册

app.conf

重要的是这句话:copyrequestbody = true

目的是允许从requestbody中直接获取二进制内容,可以从中读取json

2.写controller

controller.go

我的理解:

var ob User定义一个结构ob

this.Ctx.Input.RequestBody解析二进制内容,读取json

json.Unmarshal(this.Ctx.Input.RequestBody, &ob)将json转为ob对象

this.Ctx.WriteString(“success”)返回成功表示

3.注册路由

因为之前写spring mvc和jersey的习惯,这里当然是要限制使用Post的方法来访问接口

4.访问接口

访问http://localhost:8080/TestGetJson

1

控制台输出如下:

5.总结

感觉稍微麻烦一点。但是考虑到实现只需要三步走、配置这么少、比较容易理解,感觉beego解析json确实是挺方便的。

1 对 “beego的学习 获取json并解析为对象”的想法;

  1. 你的博客网站很好你好,我最近正在开发一个app要用beego写接口,我想认识你一下,感觉你很优秀,可以加你微信吗,或者你加我也行,我的微信就是我的电话号码:15231430440向你请教一些问题

发表评论

电子邮件地址不会被公开。 必填项已用*标注