为什么我的视频和图片没有显示出来?
问题描述:
我在AWS S3或互联网上的某个地方有图片或视频。为什么我的视频和图片没有显示出来?
我试图通过直接引用图像路径将纹理应用到一个盒子:
<a-scene>
<a-box src="https://blah.com/sometexture.png"></a-box>
</a-scene>
但什么也不显示。我得到了一些关于没有图像和CORS的控制台错误。
答
使用A-Frame 0.3.0,您不再需要手动指定crossorigin。它将自动设置在需要CORS的资产上。
https://aframe.io/faq/#why-does-my-asset-e-g-image-video-model-not-loading
一般情况下,这个问题是由于CORS。由于所有资产都是通过XHR获取的,因此您需要在资产上启用允许CORS标头。如果您从S3服务,这很常见。一旦启用CORS,你需要设置crossorigin
标志在你的资产:
<a-scene>
<a-assets>
<img id="texture" crossorigin src="https://blah.com/sometexture.png">
<video id="texture2" crossorigin src="https://blah.com/sometexture.mp4">
</a-assets>
<a-box src="#texture"></a-box>
<a-video src="#texture2"></a-video>
</a-scene>
我们确实有通过UploadCare提供了一个*上传。它是向下的那一刻,但以后你就可以在这里上传并获得CORSed资产免费https://aframe.io/aframe/examples/_uploader/
在iOS上的Safari,如果仍没有图像加载,你可能以前装好了没有crossorigin
并被缓存。尝试清除浏览器缓存。
此资源尚未运行?https://aframe.io/aframe/examples/_uploader/ –