Die*_*oia 5 scala spray swagger
假设我有一个参数化的资源网址
/customers/{CUSTOMER-ID}/ownedItems/{ITEM-ID}
Run Code Online (Sandbox Code Playgroud)
我应该如何注释/拆分我的喷涂路径(使用spray-swagger插件)生成一个文档,将{CUSTOMER-ID}识别为正确的路径参数?
我的问题是顶级@Api注释采用路径但没有参数,而@ApiOperation可以使用路径参数进行注释,但最后会附加这些参数.换句话说,如果我写:
@Api(value = "/customers/{CUSTOMER-ID}")
@ApiOperation(httpMethod = "GET")
@ApiImplicitParams(Array(
new ApiImplicitParam(name = "ITEM-ID", required = true, dataType = "string", paramType = "path"))
Run Code Online (Sandbox Code Playgroud)
我在UI中仅将ITEM-ID作为可测试参数,而CUSTOMER-ID在报告为{}时只是一个字符串.
我想要两个都是路径参数的东西.
任何的想法?
customers是您的 @Api 入口点,而不是路径参数。路径参数只能在 @ApiOperation 中使用,如下所示(有更多示例):
@Api(value = "/customers")
@ApiOperation(value = "/{CUSTOMER-ID}/ownedItems/{ITEM-ID}", httpMethod = "GET")
@ApiImplicitParams(Array(
new ApiImplicitParam(name = "CUSTOMER-ID", required = true, dataType = "string", paramType = "path"),
new ApiImplicitParam(name = "ITEM-ID", required = true, dataType = "string", paramType = "path"))
@ApiOperation(value = "/{CUSTOMER-ID}", httpMethod = "GET")
@ApiImplicitParams(Array(
new ApiImplicitParam(name = "CUSTOMER-ID", required = true, dataType = "string", paramType = "path"))
@ApiOperation(value = "/", httpMethod = "POST")
Run Code Online (Sandbox Code Playgroud)