无法在 WebGL 中渲染来自 S3 存储桶的图像
Can not render image from S3 bucket in WebGL
当我的 JavaScript 应用程序尝试从我的 Amazon S3 帐户加载图像并在 WebGL 中呈现它时,浏览器会抛出 CORS 错误。我更改了 S3 存储桶的 CORS 配置以允许访问:
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
不幸的是,当我尝试从 S3 存储桶渲染图像时,浏览器仍然抛出 CORS 错误。
有没有漏掉的步骤?或者,这只是正常现象吗?换句话说,无论文件的域是否允许通过适当的 CORS 配置访问,WebGL 是否总是拒绝跨域文件?
In order to load it with CORS as a WebGL texture, we set the crossOrigin attribute on it:
var earthImage = new Image();
earthImage.crossOrigin = "anonymous";
Now we load it as usual:
earthImage.onload = function() {
// whatever you usually to do load WebGL textures
};
earthImage.src = "http://khm0.googleapis.com/kh?v=95&x=0&y=0&z=0";
当我的 JavaScript 应用程序尝试从我的 Amazon S3 帐户加载图像并在 WebGL 中呈现它时,浏览器会抛出 CORS 错误。我更改了 S3 存储桶的 CORS 配置以允许访问:
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
不幸的是,当我尝试从 S3 存储桶渲染图像时,浏览器仍然抛出 CORS 错误。
有没有漏掉的步骤?或者,这只是正常现象吗?换句话说,无论文件的域是否允许通过适当的 CORS 配置访问,WebGL 是否总是拒绝跨域文件?
In order to load it with CORS as a WebGL texture, we set the crossOrigin attribute on it:
var earthImage = new Image();
earthImage.crossOrigin = "anonymous";
Now we load it as usual:
earthImage.onload = function() {
// whatever you usually to do load WebGL textures
};
earthImage.src = "http://khm0.googleapis.com/kh?v=95&x=0&y=0&z=0";