bee generate docs
2023-02-18 16:44:39 时间
1. beego支持的注解
bee 1.12.0
注释 | 描述 | |
---|---|---|
router | 以空格分隔的路径定义。 path,[httpMethod] | |
Title | 用于标识操作的唯一字符串。在所有API操作中必须唯一。 | |
Description | 操作行为的详细说明。 | |
Summary | 该操作的简短摘要。 | |
Success | 以空格分隔的成功响应。return code,{param type},data type,comment | |
Param | 用空格分隔的参数。param name,param type,data type,is mandatory,comment | |
Failure | 以空格分隔的故障响应。return code,{param type},data type,comment | |
Deprecated | 接口不推荐使用 | |
Security | 每个API操作的安全性。 | |
Accept | API可以使用的MIME类型的列表。值必须如“Mime类型”中所述。 |
参数类型param type
- query
- path
- header
- body
- formData
数据类型data type
- string (string)
- integer (int, uint, uint32, uint64)
- number (float32)
- boolean (bool)
- array
- file
- basicTypes(`"bool": "boolean:", "uint": "integer:int32", "uint8": "integer:int32", "uint16": "integer:int32", "uint32": "integer:int32", "uint64": "integer:int64", "int": "integer:int64", "int8": "integer:int32", "int16": "integer:int32", "int32": "integer:int32", "int64": "integer:int64", "uintptr": "integer:int64", "float32": "number:float", "float64": "number:double", "string": "string:", "complex64": "number:float", "complex128": "number:double", "byte": "string:byte", "rune": "string:byte", // builtin golang objects "time.Time": "string:datetime", "json.RawMessage": "object:",)
- user defined struct
参数示例Param
// @Param string query string true "string valid"
// @Param int query int false "int valid"
// @Param default query string default(A) false "string default"
// @Param collection query []string false "string collection"
1.1 @Success支持的类型
@Success
2. bee解析router.go引用的文件
2.1 源文件
controller.go
2.2 解析Controller之后的结果
parse controller
3. router.go 必须满足以下条件,否则Controller的注解不会生成到swagger中
3.1 router.go中必须有要生成注解的Controller的引用
imports
3.2 router.go中关于引用的controller内容必须包含赋值语句
stmt
即形如:
AssignStmt
如果没有这个_ =
,这里的语句将是:ExprStmt
- 包含单独的表达式语句。
更多类型见:golang深入源代码系列之一:AST的遍历
3.3 router.go中赋值语句必须包含NewNamespace
和(NSNamespace
或NSInclude
)
Namespace
即形如:
Namespace
相关文章
- 使用make编译运行uWebSockets
- 线索二叉树怎么画-先序线索二叉树和中序线索二叉树有什么区别 最好图解
- 广域网局域网区别-[精要]局域网与广域网的差别
- 用电脑能发传真吗-怎么使用win7电脑发传真|使用win7电脑发传真的详细步骤
- 动态规划-子数组和为总和的一半
- pthread_create 线程属性-Pthread并发编程之线程基本元素和状态的剖析
- 你的背包,让我走的好缓慢
- 什么是工业元宇宙?实时云渲染助力工业元宇宙快速发展
- 如何设计和实现一个多人在线协同编辑器
- 关于onChange事件和omComposition事件的先后顺序解决,采用onKeyDown
- 如何快速实现 BitSail Connector?
- neo4j的一些查询操作
- 双向链表排序,复杂度O(nlogn)
- 一次服务器系统的恢复过程-grubx64.efi文件丢失和黑屏
- word2vec中文词向量结合PCA算法在二维空间下可视化分析-代码
- Vue双向绑定原理解析,理解发布订阅难点问题!
- nginx报403 forbidden错误
- class、case class、object、case object的区别
- ThreadLocal详解
- 全连接队列和半连接队列