有时候,写接口的时候,需要传好多属性,往往以json数据的格式传递到后台,下面就来举一个我写的接口,主要是用来说明咋解析数据获得需要的字段

首先,前端传递的wordsJson数据是这样的:

{
    "uid":"32854",
    "IDCode":"000066",
    "wordsJson":[
        {
            "dayNum":"7",
            "name":"Tizhong"
        },
        {
            "dayNum":"5",
            "name":"BloodPressure"
        },
        {
            "startTime":"2019-07-06",
            "dayNum":"7",
            "name":"buNum",
            "endTime":"2019-07-12"
        },
        {
            "dayNum":"7",
            "name":"MealBloodSugar"
        }
    ],
    "words":"Tizhong,BloodPressure,buNum,MealBloodSugar"
}

后台如何解析穿度过来的这个json 字段:

拿到该字段转换为json:

public void newUserbodyInfo(HttpServletResponse response,String json){response.setHeader("Access-Control-Allow-Origin", "*");response.setHeader("Access-Control-Allow-Methods","POST");response.setHeader("Access-Control-Allow-Headers","x-requested-with,content-type");if (StringUtils.isEmpty(json)){CommonUtil.renderJson(response,MapUtil.setRequestCode(ResultCode.ERROR.getCode(),"",ResultCode.ILLEGAL_REQUEST_ARGUMENT.getDesc()));return;}JSONObject jsonObject = JSONObject.fromObject(json);//拿到传递来的值:String wordsJson = jsonObject.getString("wordsJson");if (StringUtils.isEmpty(wordsJson)){System.out.printIn("wordsJson不能为空!"));}else{JSONArray jsonArray=JSONArray.fromObject(wordsJson);for (int i = 0; i < jsonArray.size(); i++) {Map map = (Map) jsonArray.get(i);String num=map.get("dayNum").toString();String number= map.get("name").toString();System.out.println(number+"==="+num);}
 }
}

JSONArray jsonArray=JSONArray.fromObject(wordsJson);将获得String 转为 json数组,然后循环着个格式获得数据。

2.另外一种:  获得json格式是data:{    "body":[        {            "tid":"24",            "tName":"协和血糖专家小组招募计划",            "date":[                {                    "num":"5",                    "tid":"0",                    "type":"24"                },                {                    "num":"1",                    "tid":"1",                    "type":"24"                },                {                    "num":"1",                    "tid":"2",                    "type":"24"                }            ]        }    ],    "IOS_VERSION_CODE":"1000000",    "IOS_VERSION":"1.0",    "status":"1",    "ANDROID_VERSION_CODE":"1020006",    "ANDROID_VERSION":"1.2.6",    "msg":""}

解析的话:
JSONObject jsonObject = JSONObject.fromObject(data);
if (jsonObject.getInt("status") == 1){List list1 = (List) jsonObject.get("body");Map map = (Map) list1.get(0);List resultList = new ArrayList();
}

 List list1 = (List) jsonObject.get("body");是将获得json中获取有用的body的数据,如下红线的地方。
   Map map = (Map) list1.get(0);则是将body中的数据转为一个Map接着就可以去Map中的值了。

  这只是我用的json格式的数据,不一样的传递不一样、
 

转载于:https://www.cnblogs.com/wyf-love-dch/p/11214530.html

接口传递的json后台如何获得值相关推荐

  1. ajax调取json接口,通过 Ajax 调取后台接口将返回的 json 数据绑定在页面上

    第一步: 编写基础的 html 框架内容,并引入 jquery: 测试Ajax 第二步: 在 " " 中间插入要点击的按钮和用来显示数据的 标签,并编写对应的 function: ...

  2. 向后台接口传递FormData格式的数组对象

    向后台接口传递FormData格式的数组对象 前端利用formData格式进行数据上传,前端formData 传值 和 json传值的区别?

  3. java获取json中的某个值_接口测试之json中的key获取

    在很多情况下我们在进行接口测试的时候都会有获取上个接口返回的json数据中的某个key值,然后下个接口调用这个key值.今天给大家讲解一下针对不同类型的json获取某个key的值. 一.首先是单纯ob ...

  4. ajax传递数组到后台时为空,ajax传递数组,后台接收为null解决方法

    traditional:true,加上这个就好,默认为false,即允许深度序列化参数,但是servlet api不支持,所有设为true阻止就好了. $.ajax({ type:'post', ur ...

  5. php ajax向后台怎么传数组,利用ajax传递数组及后台接收的方法详解

    这篇文章主要给大家介绍了关于利用ajax传递数组及后台接收的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们一起来学习学习吧. 前言 我们在使用ajax异步的提交多选框得到需要 ...

  6. php ajax传递数组,ajax怎样传递数组到后台

    这次给大家带来ajax怎样传递数组到后台,ajax传递数组到后台的注意事项有哪些,下面就是实战案例,一起来看一下. 前言 我们在使用ajax异步的提交多选框得到需要操作的对象的id,这时我们可以把每一 ...

  7. 接口返回html转换josn,接口返回数据Json格式处理

    有这样一个页面 , 用来显示用户的账户记录数据,并且需要显示每个月的 收入 支出合计 ,在分页的时候涉及到一些问题,需要对返回的Json格式做处理,处理起来比较麻烦,后端返回的Json数据格式形式如下 ...

  8. 如何用java语法解析接口返回的json串?

    起因:做接口测试的时候经常需要对接口返回的响应数据(一般都是json字符串格式)做解析 下面是一个接口响应数据的例子: 下面是对上面接口返回的json格式字符串的解析 Object dataObj=J ...

  9. php接口返回错误码,laravel 错误处理,接口错误返回json代码

    Laravel 默认已经为我们配置好了错误和异常处理,我们在 App\Exceptions\Handler 类中触发异常并将响应返回给用户. 所有异常都由类App\Exceptions\Handler ...

  10. 今晚被两个bug 困扰---第一个,小程序数组传递到PHP后台变成了字符串,导致解析失败

    1.今晚被两个bug 困扰-第一个,小程序数组传递到PHP后台变成了字符串,导致解析失败 2.解决方法 小程序部分: var that = this; console.log(this.data.co ...

最新文章

  1. 一种高效的基于邻域空间聚合的点云语义分割不确定性估计方法(ICRA2021)
  2. mysql使用shell脚本部署_shell脚本部署mysql主从
  3. HTML---百度新闻轮播图--定位练习
  4. 【ruoyi若依】Caused by: java.lang.NoClassDefFoundError: com/sun/jna/platform/win32/VersionHelpers
  5. 语义化版本命名通行规则
  6. clang编译c语言开o优化,针对gcc或clang的LTO可以跨C和C方法进行优化
  7. 怎么样做好日志类的报警监控
  8. pandas 日期比较大小_pandas处理日期时间,按照时间筛选
  9. Luogu P1197 [JSOI2008]星球大战
  10. 【神经网络与深度学习】Caffe使用step by step:使用自己数据对已经训练好的模型进行finetuning...
  11. java----监听器的作用_一、理解监听器的作用
  12. kafka--Struct Streaming--hdfs案例
  13. 记录一个对外接口签名问题
  14. 一元函数积分学之3__绝对值函数的定积分的解法
  15. 学生开源项目_大学如何利用开源吸引学生
  16. 随笔(一)—2018-1-23-ANU暑期学校-无题
  17. ffmpeg遇到Non-monotonous DTS in output stream的问题
  18. 一不小心成了中国电力行业最大的无人机供应商,但曹飞的理想是推动整个产业变革
  19. 桌面管理landesk太古案例
  20. Hive第三天——Hive使用(二)(join语句)

热门文章

  1. linux find mtime 用法,Linux find命令常见用法汇总(4)
  2. python学习第八天--异常和异常处理
  3. spring,springMVC,springBoot常用注解
  4. java 序列化,流,二进制的区别和联系
  5. SpingMVC简易学习笔记二(springMVC的请求和响应)
  6. Kubernetes(K8s) 1.14.3常用操作命令
  7. 配置 mysql/mariadb sphinxSE 错误解决 1st column must be bigint to accept 64-bit DOCID
  8. Nginx 解决 Tomcat 集群下的 Session共享
  9. YOLO V2论文理解
  10. 从Linux服务用命令直接拿文件保存到本机