DOMException:无法执行' texImage2D' on' WebGLRenderingContext':" https://xxxx.xxxx"的跨源图像;可能无法加载

时间:2017-12-09 06:07:33

标签: javascript json

Chrome显示:

  

DOMException:无法执行' texImage2D' on' WebGLRenderingContext':" https://xxxx.xxxx/models/skin.png"的交叉原始图像可能没有加载。

项目工作如下:

  

- index.html的
   --live2d.js
   --models(文件夹)
   --- | model.json
   --- | skin.png

Player Shift1 Shift2 Shift3 Shift4 Bouwmeester (0, 37) (155, 194) (327, 420) (541, 602) 定义了模型中所需的图片,model.jsonlive2d.js获取数据并使模型具有动画效果。

如果我把这些放在我的主域中,一切都运行良好,但当我尝试从我的CDN域加载这些(意味着从maindomain只加载model.json,但从CDN加载其他文件)时,我得到了这个:

enter image description here

但是正如你所看到的,尽管我相信我已经很好地设置了CDN服务器的交叉起源,并且正常来自CDN域的index.htmllive2d.js负载,只有图片出错了。

我已经搜索了一段时间,例如this,但我的问题非常不同,因为我的所有文件都是从服务器加载的,包括model.json

1 个答案:

答案 0 :(得分:0)

我也有同样的问题,我通过设置用于加载和解析obj文件的加载器的crossorigin来修复它。

像这样,

var loader = new THREE.ObjectLoader();
loader.setCrossOrigin ( 'anonymous' ):

假设您使用的是ObjectLoader,请像这样设置crossorigin,

build.gradle