Dmi*_*ank 12 swagger swagger-ui swagger-2.0
我有一个API,允许传入任意路径,例如所有这些:
/api/tags/api/tags/foo/api/tags/foo/bar/baz是有效的路径.我试着把它描述如下:
/tags{tag_path}:
get:
parameters:
- name: tag_path
in: path
required: true
type: string
default: "/"
Run Code Online (Sandbox Code Playgroud)
但是,https: //generator.swagger.io会在路径中对斜杠进行编码,因此它不起作用.那么有没有办法在Swagger中描述我的API?
因此,将不会很快支持此功能(甚至没有针对Swagger 3.0计划),因此我不得不求助于解决方法。
如果我有路径,/tags{tag_path}并且输入类似这样的内容tag_path:/foo/bar,那么实际的查询请求URL将是:/tags%2Ffoo%2Fbar。因此,我刚刚在后端添加了对此的支持:用于/tags*url的端点处理程序对路径进行解码(即%2Ffoo%2Fbar),并且该路径/foo/bar再次变为。
是的,可以破解,但是可以,而且总比没有好。就我而言,标签名称不能包含/字符,因此没有冲突。当然,您的里程可能会有所不同。
| 归档时间: |
|
| 查看次数: |
3420 次 |
| 最近记录: |