首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

项目需求讨论 - 后台返回的特殊 JSON 处理

在实际开发中,现在安卓端和后台之间的数据交互,一般都是用JSON来传递数据信息。JSON大家一般都比较熟悉。我这边就以实际项目中的后台传过来的情况和大家分析下及如何处理。...比如后台返回一个交易查询: 我们看到这个列表本身要按月份来进行分类。然后月份里面再是具体的一项项记录。...这里我们分二种后台传给你的JSON格式情况讲解下:(重点是第二种情况) 普通格式 一般来说后台会根据这个需求传递相关JSON: 比如后台一般这么发给你: { "success": true,...说实话,我第一次拿到后台传给这个值的时候,我内心是拒绝的。别怪我太low,我真的没见过key变化的JSON。...这样我们就可以顺利的把后台传过来的JSON转成了我们这个新的Bean对象了。

14110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    那些年遇到的后台返回的奇葩json数据

    没有错误信息,我怎么知道请求成功还是失败。。这是在挑战我的智商吗? (建议:下次遇到这样的,直接揍一顿,就说是我说的。下面这张图送给你们后台吧。)...多层嵌套的json,在中间的某一层后台返回的是null,这种情况解析起来很麻烦的。...有数据的时候返回的类型不统一,有数据的时候返回的是json array类型,没有数据返回的时候成了json object类型。...,info这个json array类型怎么就变成了json object类型?...有时候遇到后台是新手,那就苦逼了,直接给你返回双引号里面包裹着json字符串,同时夹杂着\转义字符。 后台哥们说,你们客户端的自己去拆分解析吧。我看的想打人,你封装成一个对象,用[]返回不行吗?

    2K40

    项目需求讨论 - 后台返回的特殊 JSON 处理系列二

    这次继续是在实际项目中遇到的后台传过来的Json数据,我们来看下这次后台传给我们的是怎么样的。...然后我选择A公司的2016年,就可以给后台后台返回给其他内容。 首先我们可以看到,这个返回给我们的JSON真的是一塌糊涂。...也许你会说反正我肯定会后台,我不需要知道怎么来处理这种乱糟糟的JSON格式解析。那的确是不用看下去。哈哈。叫后台改肯定是最简单最快的。...我们来说下这种json的问题: 一般来说(可能是我开发到现在的项目是这样)我们都是把主要的数据信息放在obj里面,msg一般会返回一些提示,比如你获取数据失败了。可能提示你原因的文字说明等。...我们看到后台把实际有用数据的json部分,再次包装成了字符串,然后再作为msg的value值。 JSON中有反斜杠"\"。 Key值是中文。也就是上面的“公司简介”等Key。

    12710

    Protocol Buffers 在前端项目中的使用

    它是二进制的,所以无论是发送请求还是接收请求都要用二进制格式,也就是说在给后端发送之前我们需要把传统的json数据转换为pb结构数据(二进制),接收后端传来的pb结构数据后,我们在使用之前要转为js里支持的常用数据类型...写数据搞定了,再说下读数据,也就是当我们接收到一个pb数据流,用google-protobuf怎么解析成我们想要的数据 首先我们肯定知道返回数据的massage结构体,比如返回的结构体是这样的 message...是直接引入.proto文件,然后按需获取massage对象,建立对应的json对象后转换为之前定义的massage格式对象,最后再转码为二进制,buffer即为可以传送给后台的对象了。...接收数据时,如果没有定义接收数据的massage类型需要先定义,然后再decode解码,解码之后是一个massag类型对象还不能直接使用,再使用toObject转为js的objec类型对象。...') msg.setTopicId('149137962904') var bytes = msg.serializeBinary() //序列化 经测试,生成的请求数据没问题,后台返回了二进制数据

    6.6K50

    接口测试平台代码实现52: 自动异常测试-5

    只能等到后台接收到之后,再用eval来进行还原成二维数组或字符串了。 所以前端我们要进行变换: 然后我们再测试看看后台输出: 可以看到,虽然输出的并不完善,但是起码解析出来了。...那就是返回值的显示效果。当然我们现在接口都请求不通,也就没有返回值。那么没返回值的情况怎么办呢?我们也不能等着服务器后台报错。所以这里请求我们加上一个try来捕获吧。...那么这个问题我们要怎么解决呢? 这里提供几种思路: 在变量上下手,防止变量的值被覆盖,每次的变量名都不同。 锁死循环,必须等待前一次接收返回体后再开始第二次循环。 3....后台函数: 那么后台我们之前每次返回基本都是只返回一个字符串,也就是一般只返回一个参数字段。那么我们现在要返回的是俩个。要怎么做呢? 你可以进行字符串拼接,然后前端拿到后再给分割开。...最后别忘了删除那个demo: 然后最后就要解决一下我们上节遗留的bug了 就是请求体raw-json格式带换行的情况下,打开报错怎么处理。

    78920

    第113天:Ajax跨域请求解决方法

    "utf-8">  ② 由于src在加载数据成功后,后直接将加载内容放入到script标签中  所以,后台直接返回JSON字符串将不能在script标签中解析  因此,后台应该返回给前台一个回到函数名...,并将JSON字符串作为参数传入  后台PHP文件中返回: echo "callBack({$str})"; ③ 前台接收返回的回到函数,将直接在script标签中调用。..."  ② 后台返回时,依然需要返回回调函数。...; ③ 后台返回以后,ajax依然可以用success作为成功的回调函数: success:function(data){} 当然后台也可以随便返回一个回调函数名。...GetSingleInfo方法,使用前端的回调方法OnGetMemberSuccessByjsonp包装后台的业务操作的JSON对象,返回给前端一段javascript片段执行。

    1.4K10
    领券