如何在Blazor应用程序中加载.gltf

时间:2019-11-14 22:04:18

标签: three.js blazor static-files gltf

我正在尝试使用three.js将.gltf模型加载到我的Blazor应用程序中。 enter image description here 但是,服务器不提供此类文件。 enter image description here 我知道必须添加MIME类型,但是由于某些原因,Blazor Web应用程序无法完成,因为Startup.cs中的'app'变量是IComponentsApplicationBuilder的实例。谁能帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

IIS和IIS Express将不提供扩展名未知的文件。在错误控制台中,您会看到var tag = new NFCMiFareTag(); tag.SendCommand(new NFCIso7816Apdu(...), actionHandler); ,这意味着该文件丢失或该文件的MIME类型未注册。

我建议您尝试将404 (Not Found)文件添加到应用程序的根目录,其内容如下:

web.config

使用<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <staticContent> <remove fileExtension=".gltf" /> <mimeMap fileExtension=".gltf" mimeType="model/gltf+json" /> <remove fileExtension=".glb" /> <mimeMap fileExtension=".glb" mimeType="model/gltf-binary" /> <remove fileExtension=".bin" /> <mimeMap fileExtension=".bin" mimeType="application/octet-stream" /> </staticContent> </system.webServer> </configuration> 语句可以避免与父文件夹或根级别或系统级别发生的任何MIME类型注册发生任何可能的冲突。 <remove ... />始终是安全的,但是添加一个已经存在的配置错误。

这里是对glTF Mime Type定义位置的引用。

某些版本的IIS Express将忽略remove中的MIME类型。如果发生这种情况,上述文件可能无法正常工作。在这种情况下,您可能必须直接编辑IIS Express配置文件,以添加上面显示的信息。检查this SO answer,了解如何找到该配置文件。