golang(5)使用beego 开发 api server 和前端同学拆分开发,使用swagger
来源:互联网 发布:阿里云ddos 编辑:程序博客网 时间:2024/05/16 04:51
1,beego api
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。
项目地址是:http://swagger.io/
使用 beego 开发自带集成了 swagger的东西。
https://beego.me/docs/advantage/docs.md
github 地址:
https://github.com/beego/swagger
beego 使用最新的版本:1.8.0
2,非常的方便
创建一个项目:apiserver
bee api apiservercd apiserver/bee run -gendoc=true -downdoc=true
会自动下载最新的 swagger 压缩文件:
2017/04/06 20:52:08 INFO ▶ 0001 Using 'apiserver' as 'appname'2017/04/06 20:52:08 INFO ▶ 0002 Loading default configuration...2017/04/06 20:52:08 INFO ▶ 0003 Downloading 'https://github.com/beego/swagger/archive/v2.zip' to 'swagger.zip'...2017/04/06 20:52:21 SUCCESS ▶ 0004 800610 bytes downloaded!
启动成功,直接访问就可以了:
http://localhost:8080/swagger/#/user
非常花里胡哨的界面了,红的绿的黄的紫的。
3,代码里面可乱了
配置文件增加了
EnableDocs = true
其中 commentsRouter_controllers.go 这个文件会根据 controller 里面的内容自动生成。
而在 router 里面配置了 NameSpace。通用的配置了下版本的信息。
可以在页面当中直接提交测试数据的json
可以在页面当中直接进行查询。
和之前官方的文档不太一样。因为版本升级了。
4,一个表单提交
研究了下注释:
// @Description 创建用户// @Param Username formData string "zhangsan" true "用户名"// @Param Password formData string "123456" true "密码"// @Success 200 {int} models.User.Id models.User.Username models.User// @Failure 403 body is empty// @router /addUser [post]func (u *UserController) Post() {
- 参数名
- 参数类型,可以有的值是 formData、query、path、body、header,formData 表示是 post请求的数据,query 表示带在 url 之后的参数,path 表示请求路径上得参数,例如上面例子里面的 key,body 表示是一个
raw 数据请求,header 表示带在 header 信息中得参数。 - 参数类型
- 默认值
- 是否必须
- 注释
生成的界面是:
可以发送参数请求了,并且可以将cookie带入。
但是伪造cookie 就不行了。
可以考虑使用header当中存放 Token 参数保持用户登录。
然后在请求的是都放入进去,写死一个Token 保持用户登录。
方便前端同学进行调试开发。
4,总结
本文的原文连接是: http://blog.csdn.net/freewebsys/article/details/69486943 未经博主允许不得转载。
博主地址是:http://blog.csdn.net/freewebsys
beego 已经支持 swagger,开发一个前后端项目分离的项目最方便了。
同时可以要求把cookie 种到cookie 当中,然后使用子域名,进行跨域访问。
在beego 中开启跨域访问。
也可以存储 Token ,然后放到header头中传递用户登录。
同时为了方便测试,可以写入几个默认值写死一直登录。
方便测试借口。
可以把这个swagger 当成一个 PostMan的集合,直接进行测试调试。
非常符合项目拆分开发。非常的方便。
- golang(5)使用beego 开发 api server 和前端同学拆分开发,使用swagger
- 使用Swagger生成开发文档和前端交互
- golang(4)使用beego + ace admin 开发后台系统 CRUD
- golang-beego的使用
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api
- 使用golang进行docker api开发
- Java项目使用Swagger开发包含文档的API接口
- golang beego框架使用有感
- grpc(3):使用 golang 开发 grpc 服务端和客户端
- RESTful API开发神器swagger与spring-boot的快速整合使用
- (Swagger)一个终端和后台开发对api接口管理工具
- SpringBoot和Swagger结合提高API开发效率
- ADV-104-算法提高-打水问题
- 40.服务器搭建准备
- 蓝桥杯练习系统_基础练习_十六进制转八进制
- MPI学习笔记之并行程序概述
- java 创建 不可以滚动的 表格
- golang(5)使用beego 开发 api server 和前端同学拆分开发,使用swagger
- 代码整洁之道精华——第四章 注释
- 关于Android用JDBC远程直接连接Mysql的实践
- PTA.汽车收费(多态)
- JDBC:深入理解PreparedStatement和Statement
- 配置文件读取内容,进行完整性检查
- 致我的同事
- 计算机视觉学习
- Linux的gcc的使用