背景
数字孪生带火了3D版的Web世界,3D模型格式也是众多,常见的glb适合web传输,fbx,gltf,obj,unity等常用于模型编辑和处理。我们在用netcore或者wasm加载这些3D模型文件时,一般都需要手工增加Mime类型。IIS上好办,UI可视化增加就行,Kestrel的话,就得修改代码了,目前没有找到其它方便的配置方法。
配置
- 第一个要配置的肯定是Nginx,打开mime.types编辑,增加:
model/gltf+json json gltf;model/gltf+binary bin glb;
- 第二个配置,修改工程代码,增加:
//app.UseStaticFiles(); //默认使用wwwroot目录 //注册自定义的3D模型常用 Mime类型var provider = new FileExtensionContentTypeProvider();provider.Mappings[".data"] = "application/octet-stream";provider.Mappings[".wasm"] = "application/wasm";provider.Mappings[".unity3d"] = "application/octet-stream";provider.Mappings[".unityweb"] = "application/binary";provider.Mappings[".gltf"] = "model/gltf+json";provider.Mappings[".glb"] = "model/gltf+binary";app.UseStaticFiles(new StaticFileOptions(){ContentTypeProvider = provider,});
重启服务
- 重启或者加载nginx配置;
- 重启网站或者服务;