前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >记录一次奇葩的ajax向后台传送数据

记录一次奇葩的ajax向后台传送数据

作者头像
凯哥Java
发布2019-06-30 11:29:31
5610
发布2019-06-30 11:29:31
举报
文章被收录于专栏:凯哥Java凯哥Java

前言 :

ajax向后台传送数据,在正常不过的了。一般都是一些比较简单的,比如一个简单的实体对象,通过JSON格式数据传送后,可以直接封装到对象中。可是在工作中,有时候我们遇到的并非传递简单对象格式。本文是记录一次帮朋友的过程。

请点击此处输入图片描述

声明:本文由凯哥Java(www.kaigejava.com)发布在UC自媒体上。

正文:

我们先来看看传送数据:

后台需要的数据格式:

data={"task":{"taskName":"q1","taskDesc":"q1","projectCode":"demo"},"messages":[{"groupId":1,"groupName":"EE","groupType":0}]}

就是一个对象里面嵌套了一个对象和一个数组。

将这些参数JSON格式化后就更清晰了:

{

"task": {

"taskName": "q1",

"taskDesc": "q1",

"projectCode": "demo"

},

"messages": [

{

"groupId": 1,

"groupName": "EE",

"groupType": 0

}

]

}

如下图:

这样更容易看出数据结构了。

既然后台一定需要这种格式的数据,我们怎么处理呢?

思考:

1:一个对象中嵌套一个对象,需要获取到嵌套对象的属性怎么处理?

2:数组中怎么获取第一个元素中的属性呢?

从Java程序设置分析,解决第一个问题:java中可以使用对象.属性名称。

所以1的解决为:"task.taskName":'q1'

那数组中呢?肯定是先获取到下标所在的对象,然后再获取其属性。

2的解决为:"messages[0].groupId":1

所以,根据分析我们得到最终的参数为:

var param = {"task.taskName":'q1',"task.taskDesc":'a',"task.projectCode":'demo'

,"messages[0].groupId":1,"messages[0].groupName":"EE","messages[0].groupType":10};

如下图:

经过分析,封装之后,请求传递到后台,就可以了。

这是一种方案,还有一个种方案,我们下一篇文章讲解。同时还会讲解后台Java程序怎么接收这种数据封装。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-11-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档