Java教程

java 调用三方接口post传参时map和jsonobject的区别

本文主要是介绍java 调用三方接口post传参时map和jsonobject的区别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

 

      如果方法参数param是要求以json字符串的形式传递则:

  1. 如果是JSONObject对象转字符串则:String result = HttpUtil.doPost(URL, json.toJsonString());

  2. Map转字符串则需采用:String result = HttpUtil.doPost(URL, JSON.toJSONString(map));

  注:使用map.toString() 时会出现参数解析不到的问题

  因为:json.toJsonString()转换后为:{"name":"ceshi","password":"123456"}

     map.toString()转换后为:{password=123456, name=ceshi}

  对比可知,参数不一致;

  测试方法如下:

public static void main(String[] args) {
        Map map = new HashMap<>();
        map.put("name", "ceshi");
        map.put("password", "123456");
        System.out.println(map.toString()); //{password=123456, name=ceshi}
        System.out.println(JSON.toJSONString(map)); //{"name":"ceshi","password":"123456"}

        JSONObject json = new JSONObject();
        json.put("name", "ceshi");
        json.put("password", "123456");
        System.out.println(json.toJSONString()); //{"name":"ceshi","password":"123456"}
    }

 

参考:https://www.cnblogs.com/mufengforward/p/10707484.html

这篇关于java 调用三方接口post传参时map和jsonobject的区别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!