【发布时间】:2014-06-25 16:29:52
【问题描述】:
我正在尝试使用THREE.ImageUtils.loadTexture(url) 加载图像,但由于图像位于与托管网页不同的域中,因此出现以下错误:
Uncaught SecurityError: Failed to execute 'texImage2D' on 'WebGLRenderingContext': The cross-origin image at
我在加载纹理之前添加了THREE.ImageUtils.crossOrigin = "anonymous",但随后出现以下错误:
来自“跨域 url”的图像已被跨域资源共享策略阻止加载:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问 Origin 'hosted url'。
我也试过下面的代码:
var url = 'http://www.corsproxy.com/yourdomain/yourfolder/yourimage.png';
var image = document.createElement('img');
image.crossOrigin = '';
image.src = url;
var texture = new THREE.Texture(image);
texture.needsUpdate = true;
material.map = texture;
但是由于代理在我这边被阻止了,所以也无法通过这种方式加载跨域图像, 请让我知道如何继续在 THREE.js 纹理中加载跨域图像。我正在使用 Three.js 的 66 版..
【问题讨论】:
标签: three.js