beego 获取request body内容
beego 获取request body内容
最近自己用beego写了点东西,发现一些坑,主要是获取http的request body的内容。开始一直在controller里面直接使用GetString之类的方法,后来才知道这个并不是raw data。后来翻了下官网发现其实有文档记录的
获取 Request Body 里的内容
最后自己再封装下,上代码:
|
|
这个是自己有个父类叫BaseController,全部controller都会继承它,之后在别的controller的地方使用的时候就可以如下:
|
|
之前的简单Get方法就可以不要了~:-D
Api转换为小写丢回给Client
对于Go语言的大小写来作为是否为public标识的设计还是很不错的。但,人生总是充满着坑,作为一个良好的代码设计规范有些肯定是要统一遵守的。so,借用以前团队的规范,现在一般我定义的http的response的json结构如下:
|
|
这样子应该是一个良好的设计。那么问题来了,beego里我们定义的Model类的变量肯定是大写开头的,因为你要在别的文件作调用(别聊getter和setter先),what the fuck,直接把某个对象设置为data就很蛋碎,你就会得到类似这样子的结构:
|
|
全大写这是在逗我呢,好诡异,查了下原来有个办法就是在struct定义的时候给个tag值就好了
|
|
这样子得到的response就是如下:
|
|
nice,不错,看起来舒服多了~~~
O(∩_∩)O先记录到这里~