如何让chrome支持ajax本地访问

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让chrome支持ajax本地访问相关的知识,希望对你有一定的参考价值。

前段时间一直用Chrome 和 Safari 来支持HTML5的运用,在测试的过程中发现原来由于Chrome的安全机制不能支持ajax的本地访问, 例如:

在JavaScript里面访问 URL:file:///E:/test.html,Chrome 浏览器报错:XMLHttpRequest cannot load file:///E:/test.html. Origin null is not allowed by Access-Control-Allow-Origin.

解决它的方法就是将HTML5的程序做成 Chrome的扩展程序,该扩展程序的扩展文件名为.crx。

1. 在程序根目录下面增加一个manifest.json 文件,文件格式为:

  
"name": "DemoApp",  
  "description": "Demo",  
  "version": "0.1",  
  "app":   
    "launch":   
      "local_path": "***.html"  
      
  ,  
  "permissions": [  
    "unlimitedStorage"  
  ]  

2. 将该程序利用Chrome打包。 打开Chrome,在设置按钮中选择【工具】->【扩展程序】,或者在地址栏输入“chrome://extensions/”,如图:

3. 点击扩展程序,打包HTML程序:

4. 将打包后的扩展程序拖到chrome浏览器里面安装,安装完后,运行程序即可。

参考技术A 由于一些安全机制的限制,ajax是不能支持本地访问的(除非是在调试本地网页,并访问本地网页所在的根目录下的文件)本回答被提问者采纳 参考技术B

    鼠标右击chrome,点击属性

    在dos下找到chrome.exe的路径,在后面加上参数--allow-file-access-from-files 

    重启浏览器

参考技术C 把服务撸成本地的就可以了,http://127.0.0.1/myapi/ 参考技术D 您指的本地访问是?ajax请求的数据源也是本地?请具体阐述

以上是关于如何让chrome支持ajax本地访问的主要内容,如果未能解决你的问题,请参考以下文章

如何解决chrome 等浏览器不支持本地ajax请求的问题

如何解决chrome 等浏览器不支持本地ajax请求的问题

Chrome不支持本地Ajax请求,解决办法

本地调试 Chrome支持Ajax跨域

如何解决ajax在google chrome浏览器上失效

配置chrome支持本地(file协议)ajax请求