2016-11-01 124 views
1

我试图调用REST Web服务API PATCH,这里是我的JSON有效载荷REST服务PATCH API例如

[ 
    { "op":"replace", "path":"/values/Timestamp","value":"2016-10-28T15:25:43.511Z"}, 
    { "op":"replace", "path":"/values/Flag", "value":true }, 
    { "op":"replace", "path":"/values/Flow", "value":"Flow A"}, 
    {"op":"replace", "path":"/values/Interests", "value":[ "Sports", "Book Reading" ] } 
] 

JSON Value属性有不同的数据类型不同的值。我想准备实体对象(Java)并将其转换为JSON并调用REST终点。 现在 我不是很肯定

这是最合适的数据类型,我可以选择属性的值

我刚才提到以下链接,但我没有得到足够的细节

Android REST API using PATCH method
https://tools.ietf.org/html/rfc5789#section-2.1 http://blog.earaya.com/blog/2013/05/30/the-right-way-to-do-rest-updates/

http://williamdurand.fr/2014/02/14/please-do-not-patch-like-an-idiot/

但我没有得到足够的细节。

有这方面的建议是真的appriciated

+0

为什么不使用'Object'作为数据类型的值!并基于_field name_,将其转换为所需的数据类型 –

+0

我想使用Gson或其他一些库将该Java对象转换为JSON,因此在该阶段会出现歧义。 – Suresh

+0

您必须__type cast__它基于字段类型,然后使用Gson将其转换为JSON。 但是,为什么你需要再次将其转换为JSON格式?你可以不只是有__getter method__对象,并使用它们来存储值到DB –

回答

0

得到了来自客户端的Java对象,并创建了以下特性另一个Java类和设置的值

  1. OPN - 串
  2. 路径 - 字符串
  3. value - Object

将上面的java对象添加到arra然后使用GSON库将其转换为JSON对象的数组,这些JSON对象将被patch API接受。

,请注意内容类型是application/json-patch+json