KhronosGroup / glTF-Sample-Viewer

Physically-Based Rendering in glTF 2.0 using WebGL
Apache License 2.0
1.29k stars 238 forks source link

URLs without file extensions don't work #586

Open hybridherbst opened 3 weeks ago

hybridherbst commented 3 weeks ago

URLs that return proper GLB data with correct mime-type but don't have an extension do not work in the viewer.

Example URL:
https://github.khronos.org/glTF-Sample-Viewer-Release/?model=https://cloud-staging.needle.tools/-/assets/ZUBcksZ1xqP5R/Z1xqP5R/optimized/file

Note you can download it from:
https://cloud-staging.needle.tools/-/assets/ZUBcksZ1xqP5R/Z1xqP5R/optimized/file

This works (note .glb file extension):
https://github.khronos.org/glTF-Sample-Viewer-Release/?model=https://cloud-staging.needle.tools/-/assets/ZUBcksZ1xqP5R/Z1xqP5R/optimized/file.glb

Other glTF tools support files without extensions but correct mime-type just fine:
✅ Needle Viewer: https://viewer.needle.tools/?file=https://cloud-staging.needle.tools/-/assets/Z23hmXB1tXjQr/1tXjQr/file ✅ three.js: https://stackblitz.com/edit/three-dev-6gar8k?file=main.js ✅ model-viewer: https://stackblitz.com/edit/progressive-gltf-modelviewer-aw5kts?file=index.html ✅ PlayCanvas: https://playcanv.as/p/cs43ZE3p/ ✅ UnityGLTF