jquery ajax 访问本地地址问题(转)

问题:

前端制作静态页面,使用ajax读取数据,前台显示,但是在chrome下显示不出来。

 

目录结构:

其中, chartdata.html为请求访问的页面,构造数据格式为json。(该示例已上传至我的资源)

 

查找原因:

打开Chrome,通过JavaScript调试工具,显示问题如下:

XMLHttpRequest cannot load file:///D:/DangDangUED/DDCommon/general/Chart/jQChart/chartdata.html. Origin null is not allowed by Access-Control-Allow-Origin.

 

断点调试,说是eval(data)[0]无法读取。

 

 

解决:

Google一把,在Stackoverflow上找到该问题的解答:

 http://stackoverflow.com/questions/4208530/xmlhttprequest-origin-null-is-not-allowed-access-control-access-allow-for-file

 

原来,ajax会对请求进行分析,比方说如果只是静态页面请求,那么地址均为 file://// ,相应的采取本地策略。对于chrome,则是出现XMLHTTPRequest 无法访问的问题。

 

当把页面放置于服务器上,地址均为 http:// ,搞定!

 

PS:chrome的上网设置使用的是IE的网络设置,如果你使用了代理上网,记得在本地调试的时候,勾选“跳过本地地址的代理服务器”。

是同源策略,不允许访问本地文件,需要把页面放到一个服务器上面。

(转载自http://blog.csdn.net/spring21st/article/details/6109669

posted @   楠木大叔  阅读(555)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示