我们正在尝试使用WSO2的API管理器来访问我们的一些RESTful服务的。 其余的服务期待一个JSON有效载荷。 当JSON请求发送到API管理其转换的JSON请求,XML和再次同时转发到将其转换成JSON回到实际的端点。 生成的JSON没有精确匹配在我们的情况下,一个原来的请求。 例如如果rquest包含元件阵列,然后当API管理将请求转发到端点阵列字符([,])被去除,如果只有一个元件阵列中的通过。 例如。 我们原来的请求是
{
"entities": [
{
"name":"KK71CP20000523A1",
"descr":"VaS",
"mnf":"BCT",
"mdlyr":"2012"
}
]
}
通过API管理器发送请求是
{
"entities":
{
"name":"KK71CP20000523A1",
"descr":"VaS",
"mnf":"BCT",
"mdlyr":"2012"
}
}
该阵列被包裹下的实体元件除去。 当元件的数目是一个以上,则数组的字符被保留。
我们在ESB面临着同样的问题,也是以前。 但是,我们的工作围绕这一问题通过扩展默认JSONMessageFormatter和使用中抛放库中的可用seriliazeAsArray方法。 但是,我们不希望这样做定制的API管理器。 是否有解决这个问题的一个更好的办法? 任何从WSO2的补丁解决这一问题?