当前位置: 首页 > news >正文

西安地区专业做网站公司余姚生活网

西安地区专业做网站公司,余姚生活网,服务器放网站吗,如何写网站开发需求文档上半部分主要介绍我实际出现的问题,最终下面会有总结。 起因:我想发送post请求的data,但是在浏览器中竟然被搞成了地址栏编码 如图前端发送的ajax请求数据 如图发送的请求体: 很明显是keyvalue这种形式,根本就不是…

上半部分主要介绍我实际出现的问题,最终下面会有总结。

起因:我想发送post请求的data,但是在浏览器中竟然被搞成了地址栏编码

如图前端发送的ajax请求数据


如图发送的请求体:

很明显是key=value这种形式,根本就不是我们想要的{key:value}这种JSON形式。并且我们明明指定发送数据类型dataType和文本类型contentType都是json格式,为什么还是不行呢?
 

原因:浏览器会检测你的data和contentType,虽然contentType满足,但是你的实际的data类型不满足,因为如果发送的是JSON对象,浏览器默认会进行地址栏编码urlEncode,只有你发送的是JSON对象才会真正发送出JSON数据。
 

这里解释一下JSON对象和JSON字符串的区别,我看到很多人说什么key带不带引号的区别?

我觉得纯纯扯淡,他俩的区别也就是字面意思的区别,就很简单一个是对象,一个是字符串,数据类型不同。至于key加不加引号,JSON对象的key加不加引号都可以,而JSON字符串必须加引号,所以为了统一,也为了我们后续出现混淆,key一律加引号!!!!

所以最终的JSON对象格式:{"name":"zhangsan"}
而JSON字符串格式:'{"name":"zhangsan"}'

JSON字符串除了外面多的那个'',其他别无区别,那怎么将JSON对象转换为JSON数据进行发送呢?使用JS内置的JSON.stringify(data)这个函数,其实你比较'{"name":"zhangsan"}'和使用
JSON.stringify({"name":"zhangsan"})结果比较是完全相同的。

那可能有人问了,就这么简单,就是这么简单,也就是这么不简单,别看这一个''小小的引号,你如果不用这个函数,能给你玩死,例如,我们不用函数,怎么把他变为JSON字符串的

看到没就是各种引号去拼接,我这里才只是一个变量,如果你有多个呢?你能看的清吗?而且根本就是屎山没办法看,少一个引号都得报错,所以直接调用内置的函数JSON.stringify就好。
 

总结:上述可能有些乱,我总结上述说的几个重要点?

一、JSON字符串和JSON对象的区别?

{"name":"zhangsan"}   //数据类型object
'{"name":"zhangsan"}' //数据类型string 

二、JSON字符串和JSON对象的区别,关于网上说的是key加不加引号的问题的区别?

纯纯误导人,并且没有做测试,key值为了统一,一律加双引号。因为JSON字符串key值不加上瘾好,解析会报错,而JSON对象key加不加双引号,结果都是一样的,所以为了我们减少混淆和误导,更易于我们后续区分JSON对象和JSON字符串,key一律加双引号。这样他们本质的区别就是数据类型的不同,一个是对象,一个是字符串。

三、为什么要转换成JSON字符串进行数据传输?

因为浏览器默认会将JSON对象进行地址栏编码,即URL编码,就是变成key=value的数据形式,后端@RequestBody解析不了,因为不是标准的JSON格式数据。
只有发送JSON字符串,才会进行JSON编码,从而发送JSON数据
 

四、为什么使用JSON.stringify()将JSON对象转换成JSON字符串?

如果不使用,使用传统的引号拼接方法,也能实现,比较麻烦,而且容易因为哪个引号的少拼接导致数据错误,不易发现,而且代码丑陋。

五、同事间说的JSON数据就是什么?

同事说给我穿个JSON数据,其实说的就是我们前端发送的JSON字符串,最终被浏览器通过JSON编码解析出来的样子,结果实际上就是一个{key:value},其中key是不加双引号的。

http://www.yayakq.cn/news/734803/

相关文章:

  • 如何搭建钓鱼网站更换网站服务商 重新制作了网站
  • 长春新建高铁站网站建设 杭州
  • 做网站有哪些类型的seo优化方案案例
  • 网站建设 sql 模版在国外建网站方便吗
  • 同德县公司网站建设公司运营策划方案
  • 做第三方库网站游戏的制作方法
  • 网站设计费 建设费入什么科目北京网站制作建设公司
  • 建立自己公司网站的方法常宁网页定制
  • 南昌市东站建设公司永川网站建设熊掌号
  • 做简历网站 39网站怎么建设原始站点
  • 湛江网站建设模板在网站上做漂浮
  • 七里港网站建设宁波网易企业邮箱
  • 网站开发公司招聘计算机前端培训多少钱
  • 做网站较好的框架wordpress搬家简书
  • 绵阳网站搜索排名wordpress也没修改
  • 太原网站的公司民治营销型网站制作
  • 南网站建设网络营销方案步骤
  • 做ppt音乐模板下载网站链接提取视频的网站
  • 做网站的框架常州哪家公司做网站
  • 柯桥网站建设免费自媒体网站
  • 儋州网站建设网页编辑可视化软件
  • 厦门网站建设团队定制网站开发设计
  • 做3d模型的叫什么牛的网站wordpress汉化教程视频
  • 网站注册页面代码wordpress 服务器错误
  • 外贸网站推广平台ppt模板的种类
  • 网站验证码 出不来线上引流的八种推广方式
  • 网站导航图标wordpress 特色缩略图
  • 网站关键词更新简易网页模板
  • 德阳建设银行招聘网站wordpress 文件不刷新
  • 去掉博客网站链接后面的wordpress潍坊 网站建设