前端:毫无疑问是js
java语言:是一种强类型的语言,必须定义类型,然后生成实例;而js却不是,虽然它也是面向对象的,但是它并没有先定义类这一种概念(但是js也有类型),它是基于原型的一种模式,和java完全不同。很显然,二者的原理,机制,语法并不能兼容。二者产生的对象并不能被对方解读。再来看网络传输,通常就是http/tcp协议喽,使用的其实是请求-响应,再说白了即使字符串,不论后台传来的是什么类型的数据,也不论前台传回的什么类型的数据,网络层统统当作字符串处理,它也没有办法来解析类型啊!说到这里,前后台传数据也就只能用字符串了,那也就意味着它们各自都要完成一个转换过程,把要发送的转换成字符串,把要收到的字符串解析成自己的对象。因为传输的字符串会涉及前后台双方的解析和处理,所以双方都必须认识或者知道字符串该怎么转,也就是说,最好能有一种通用的规则来编辑,转换字符串,这个标准或者协议就是JSON,JSON就是用来交换数据的,是一种string,一种独立于平台的数据格式。
这样一来,前台就需要把自己的数据类型转成JSON,然后发给后台,后台在用JSON来解析数据,转换成自己的类型。后台传前台一样。那么,怎么把自己的数据转成JSON呢?
`JSON`对象可以通过JavaScript存取属性!JSON对象封装成JSON字符串经常用于前后台传输数据!
如果在前端使用,那么JSON对象可以通过 对象.属性名 来调用,如果是json字符串,那么只是字符串了!
在数据传输过程中,JSON是以文本、即字符串的形式传递的,而JavaScript *** 作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键。
JSON字符串:var str = '{ name: 'xmt', sex: 'woman' }';
JSON对象: var str = { name: 'xmt', sex: 'woman' };
JSON字符串转化为JSON对象:var obj = JSON.parse(str) ;
JSON对象转化为JSON字符串:var str = JSON.stringify(obj);
首先后台返回数据格式形如下面:
var jsonData = '{↵↵ "reason": "成功",↵↵ "result": {↵↵ "realname": "董**",/*真实姓名*/↵↵ "idcard": "330329199******12",/*身份z号码*/↵↵ "res": 1 /*1:匹配 2:不匹配*/↵↵ },↵↵ "error_code": 0↵↵ }'
然后JS处理如下:
jsonData = jsonData .replace(/↵/g,"").replace(/ /g," ")
或者下面这种
jsonData = jsonData .replace(/\n/g,"").replace(/ /g," ")
页面上如果是框架的话 使用v-html 或者ng-html等,否则使用<pre></pre>也可以。
现在不管是web端还是客户端,请求使用的都基本是用json格式,像iOS中,使用字典键值带参
客户端这样的做法,是为了更好的处理参数。
再例如小程序端的参数带值也是如此
JavaScript中 XMLHttpRequest 的网络请求
当然 JavaScript中可以使用 FormData 结合 application/x-www-form-urlencoded
说完前端请求,就到SpringBoot的处理了json数据
好吧,其实就是这么简单
这里提供两个我写好的接口,仅供学习( 请勿偷袭服务器!!! )
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)