如何允许WebGL从本地载入资源
2017-05-04 10:45
211 查看
当发现3D展现是一团黑的时候,在控制台如果看到“Unable to get image data from canvas because the canvas has been tainted by cross-origin data.”的错误提示,这是因为浏览器的安全策略,“同源策略”。浏览器为了阻止欺骗,会追踪 image data。当你把一个“跟canvas的域不同的”图片放到canvas上,这个canvas就成为 “tainted”(被污染的,脏的),浏览器就不让你操作该canvas 的任何像素。
这个问题有两种解决方案
方案一:有服务器环境,将项目部署在web服务器上,最简单的tomcat。
mono-design的目录中并直接移动到例如apache-tomcat-6.0.37\webapps\ROOT\下,然后浏览器打开后输入http://localhost/mono-design/即可。
方案二:设置浏览器
On Windows:
Chrome:
1、得到Chrome的安装路径,例如:
2、在命令行窗口,输入安装路径,加上–allow-file-access-from-files参数,例如:
,回车执行,启动Chrome
3、测试的一个临时方法::复制一个Chrome的快捷方式,右键->属性->目标的文本框中加上参数
,例如:
IE11:默认可以加载本地图片
Firefox:
1、Firefox的用户请在浏览器的地址栏输入“about:config”,回车
2、在过滤器(filter)中搜索“security.fileuri.strict_origin_policy”
3、将security.fileuri.strict_origin_policy设置为false
4、关闭目前开启的所有Firefox窗口,然后重新启动Firefox。
On Mac:
Chrome:从命令行窗口中启动,启动命令为
Safari:
1、Safari->偏好设置->高级->勾选“在菜单栏中显示‘开发’菜单”
2、开发->勾选“启用WebGL”
3、开发->勾选“停用本地文件限制”
Firefox:
1、Firefox的用户请在浏览器的地址栏输入“about:config”,回车
2、在过滤器(filter)中搜索“security.fileuri.strict_origin_policy”
3、将security.fileuri.strict_origin_policy设置为false
4、关闭目前开启的所有Firefox窗口,然后重新启动Firefox。
原文参考:http://www.cnblogs.com/twaver/p/3710941.html
这个问题有两种解决方案
方案一:有服务器环境,将项目部署在web服务器上,最简单的tomcat。
mono-design的目录中并直接移动到例如apache-tomcat-6.0.37\webapps\ROOT\下,然后浏览器打开后输入http://localhost/mono-design/即可。
方案二:设置浏览器
On Windows:
Chrome:
1、得到Chrome的安装路径,例如:
C:\Users\-your-user-name\AppData\Local\Google\Chrome\Application
2、在命令行窗口,输入安装路径,加上–allow-file-access-from-files参数,例如:
Chrome installation path\chrome.exe --allow-file-access-from-files
,回车执行,启动Chrome
3、测试的一个临时方法::复制一个Chrome的快捷方式,右键->属性->目标的文本框中加上参数
--allow-file-access-from-files
,例如:
"Chrome installation path\chrome.exe" --allow-file-access-from-files
IE11:默认可以加载本地图片
Firefox:
1、Firefox的用户请在浏览器的地址栏输入“about:config”,回车
2、在过滤器(filter)中搜索“security.fileuri.strict_origin_policy”
3、将security.fileuri.strict_origin_policy设置为false
4、关闭目前开启的所有Firefox窗口,然后重新启动Firefox。
On Mac:
Chrome:从命令行窗口中启动,启动命令为
open /Applications/Google\ Chrome.app --args --allow-file-access-from-files
Safari:
1、Safari->偏好设置->高级->勾选“在菜单栏中显示‘开发’菜单”
2、开发->勾选“启用WebGL”
3、开发->勾选“停用本地文件限制”
Firefox:
1、Firefox的用户请在浏览器的地址栏输入“about:config”,回车
2、在过滤器(filter)中搜索“security.fileuri.strict_origin_policy”
3、将security.fileuri.strict_origin_policy设置为false
4、关闭目前开启的所有Firefox窗口,然后重新启动Firefox。
原文参考:http://www.cnblogs.com/twaver/p/3710941.html
相关文章推荐
- 如何允许WebGL从本地载入资源
- 如何允许WebGL从本地载入资源(ajax的post请求返回error函数而不到success)
- 如何允许WebGL从本地载入资源
- 如何允许WebGL从本地载入资源
- 【chrome】设置chrome允许WebGL从本地载入资源
- VB中如何把资源器的文件释放出来,并且允许。。如把1.bat载入资源编辑器
- 如何防范ipc$***察看本地共享资源
- 从本地拖资源到远程桌面上如何设置
- Solaris 11如何允许root用户本地登录
- WebView 如何能同时载入网上的和本地的文件
- git删除本地的资源,如何恢复?
- 如何产生签名applet能让applet能够访问本地资源
- iOS- 如何建立索引实现本地文本搜索引擎,允许容错搜索?
- nodejs构建本地web测试服务器 如何解决访问静态资源问题
- 如何产生签名applet,以使applet能够访问本地资源?
- 如何禁用使用空密码的本地账户只允许进行控制台登录
- java项目中如何引用本地路径图片 图片资源与部署目录分离
- WebView载入本地html(含css资源)显示不全解决办法
- 如何应用程序中载入其他域的swf文件,并且允许它访问程序中的 ActionScript
- WebGL如何解决中文文字载入