我正在使用 ThreeJS 和 WebGL 构建一个小的 3D 应用程序。我故意选择不将模型转换为与 ThreeJS 兼容的 .json 文件,而是开始构建导入器。它可以工作,但我还计划让应用程序决定使用文件扩展名和 MIME 类型加载的模型类型,如果第一个未知,则后者。
我在某处读到 MIME 类型应该是application/wavefront-obj
,这有点奇怪,因为还有model
树,但无论如何都可以。尽管在 IANA 网站上浏览此文件类型不会产生任何结果。
我错过了什么吗?
根据维基百科,它是 .obj 的“文本/纯文本”。
我猜它也是 .mtl 文件的“文本/纯文本”,因为其中有文本,而且它“是 Wavefront Technologies 为ASCII 文件定义的标准”。
您需要更新 web.config 并添加对obj文件类型的引用
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<staticContent>
<remove fileExtension=".obj" />
<mimeMap fileExtension=".obj" mimeType="text/plain" />
</staticContent>
</system.webServer>
</configuration>
对 .obj 文件使用 MIME 类型“应用程序/对象”。它适用于 Chrome、Safari 和 FireFox。
根据定义和维护媒体类型(这不是维基百科)的协会 IANA 的说法,“obj”的 mime-type 是model/obj
,model/mtl
对于“mtl”。查看模型的其他媒体类型:https ://www.iana.org/assignments/media-types/media-types.xhtml#model