对接接口时,组织参数json出现的问题

在进行对接第三方接口时,进行参数组装成json的过程中出现参数传递格式错误以及json格式化错误。

在拼接json时,如果json中有对象,则以map的方式组装好所有参数。最后map转成json,不然直接用jsonObject对象put参数,会自动在json中的json那里帮我们添加转义符以及把{}括号加上双引号,导致传参时解析json出错。

下面是用JsonObject类对象一直put参数组成的错误json。

 

所以要用Map组装的方式生成json:

String requestParams = JsonMapper.toJsonString(params); // 最后直接调用json工具将map转成json字符串

这样组装就不会自动帮我们添加多余的转义符和双引号。

Note:在用map组装的方式组装时,如果有日期Date类型的参数(在Map类型为Map(String,Object)的前提下),如果value传入了Date类型数据,输出的时候会自动帮我们转成long类型的日期值,所以可以先把Date()转成String放到Map中。

posted @ 2020-08-28 16:06  HaowenBi  阅读(413)  评论(0编辑  收藏  举报