让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程序:
<!--[endif]-->
4,将打包后的扩展程序拖到chrome浏览器里面安装,安装完后,运行程序即可。