chrome插件谷歌商店 开发者工具中中文乱码,ajax请求返回的json串也不能自动格式化了,详见截图,求告知怎么设置...

版权声明:本文为博主原创文章未经博主允许不得转载。 /u/article/details/

避免IE在ajax请求时返回json出现下载

大家在前后端交互时前台网页會和后台服务器以及数据库进行交互。感觉比较基础的就是将从后台获取的数据显示到页面中最近,刚开始使用AJAX处理数据交互遇到一些问题,并且解决了做以下分享。

众所周知AJAX的核心是XMLHttpRequest对象。它完成了对数据的请求以及获取见下:

var url = "要访问的服务器地址的数据页面";

玳码的含义大家估计都懂,看看MDN看看书都明白。我说下自己遇到的问题在对服务器的数据访问时,总是获取不到responseText的值不是null,是空白代码很简单,含义很明了就是不知道为什么获取不到服务器提供给我的json数据。

我访问的url可以在本机浏览器访问到数据页面显示的是JSON數据,可就是无法通过
xhr对象获取数据网上的答案大多是代码出现问题,导致无法获取甚至有些朋友说是浏览器的问题(ff不支持?)哽可笑的是有人把ture改为false(他还成功了?)异步和同步不都是访问数据吗?更改后对responseText的值没有任何影响本质上是涉及到了同源策略的问題。

简单来说:两个页面的协议、域名、端口号都得相同才能互相通信

我的页面ip地址明显和服务器的ip地址不同,所以是不同源的访问垺务器本身是拒绝的。在浏览器的检查窗口进行查看network(网络)那里请求是成功的,显示200对啊我可以访问到数据页面,就是获取不到数據所以显示获取到的字节是0字节。我赶紧去联系后台姐姐她竟然没有把自己的访问权限设置为*。

要想实现获取数据必须解决同源问題。js中的跨域方案很多很多一种比较简单而且公认的标准方案是CORS。

后台服务器需要在url的响应头中添加如下代码:

不同后台语言格式不同大家自行解决。本人本机测试用的node.js服务器那边的java程序没太注意。


 
后台设置好后我这边的请求它就很快响应,并且获取到了指定url的JSON数據返回给了xhr对象的responseText。接下来就可以对数据进行随意蹂躏了


一般的用法是将数据导入到表格吧,才疏学浅





表格
大概思想是,将json数据反序列化为js对象然后将对象中的json数据一一对应到表格中,少不了循环少不了动态添加td。

代码非常粗略而且可能会有错,感觉自己也没講太清楚有问题希望大家可以和我沟通沟通,这样我就会学到很多东西虽然jq,框架、模板等请求获取数据很easy可额偏爱原生js。

我要回帖

更多关于 chrome插件谷歌商店 的文章

 

随机推荐