2015-11-21 52 views
0

我是使用Swagger文档的新手。我在Java rest服务类上使用Swagger的注释。能否请您提供一些帮助,对下面的问题 -与Java Rest服务的Swagger UI

我的休息方法如下:

public String testMethod3(@ApiParam(value = "Mailing address of the user", required = true) @FormParam("address") final String address) {} 

正如你看到的,我传递一个JSON字符串参数 - 地址到我的休息方法。在JavaScript端,我有下面的代码来设置数据 - 通过调用JSON.stringify(addressMap)

var addressMap = {}; 
addressMap.city = 'SS'; 
addressMap.zipCode = '98877'; 
addressMap.state = 'CA'; 

现在我给这对其余的方法。

在Swagger-UI中,我只获取一个参数选项来输入。我如何让用户知道这是一个复杂的对象,他们需要传递城市,邮政编码和状态值。

回答

0

如果您传递的数据是@FormParam,则需要为每个字段添加一个值。例如,城市,zipCode和州。

但我相信你真正想要做的就是将JSON作为HTTP POST方法发布,这种情况下,你将删除@FormParam并将这些值消费到具有有效负载中的字段的java对象。

+0

非常感谢。我创建了一个Java类并放置了所有这些属性,并将该类用作参数。 Swagger UI现在将参数类型显示为'body'并提供JSON字符串。谢谢。 –

+0

另外,我想知道Swagger是否支持不同的请求和响应模型模式。 –