What is MIME type "model/gltf+json"?
A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.
model/gltf+json is a MIME type for 3D models in the JSON format. It signals that the file contains a structured description of a 3D scene using GL Transmission Format (glTF).This format lets programs read 3D scenes, materials, and node hierarchies directly from a text-based file. It is ideal for fast asset transmission and real-time rendering in web and native applications.
- Used to load and render complex 3D scenes with efficient parsing.
- Supports referencing external resources like textures, shaders, and binary buffers.
- Enables smooth integration with modern 3D engines and web viewers.
- Adopts the lightweight JSON structure to improve portability and ease of debugging.
For more detailed technical information, visit the glTF specification.
Associated file extensions
Usage Examples
HTTP Header
When serving content with this MIME type, set the Content-Type header:
Content-Type: model/gltf+json
HTML
In HTML, you can specify the MIME type in various elements:
<a href="file.dat" type="model/gltf+json">Download file</a>
Server-side (Node.js)
Setting the Content-Type header in Node.js:
const http = require('http');
http.createServer((req, res) => {
res.setHeader('Content-Type', 'model/gltf+json');
res.end('Content here');
}).listen(3000);
Associated file extensions
FAQs
What is the correct MIME type for .gltf files?
The standard MIME type for .gltf files is model/gltf+json. This indicates that the file is a text-based JSON document describing a 3D scene. If you are using the binary version (.glb), you should typically use model/gltf-binary instead.
How do I configure Apache to serve model/gltf+json?
To ensure Apache serves .gltf files with the correct headers, add the following line to your .htaccess file or main configuration: AddType model/gltf+json .gltf. This prevents browsers from misinterpreting the 3D data as generic text.
How do I add the GLTF MIME type to Nginx?
In your nginx.conf or mime.types file, add the directive inside the types block: model/gltf+json gltf;. After saving the file, reload Nginx using sudo service nginx reload to apply the changes.
Why does my GLTF model return a 404 error on IIS?
Microsoft IIS blocks unknown file extensions by default for security reasons. To fix this, open the MIME Types feature in IIS Manager and add a new entry with the extension .gltf and the MIME type model/gltf+json.
What is the difference between model/gltf+json and model/gltf-binary?
model/gltf+json is used for human-readable JSON files (.gltf) that often reference external textures and binary data. model/gltf-binary is used for .glb files, which pack all textures and mesh data into a single binary file for easier distribution.
Do I need to configure CORS for model/gltf+json files?
Yes, Cross-Origin Resource Sharing (CORS) is frequently required. Because .gltf files often reference external resources (like .bin buffers or images), loading a model from a different domain or CDN will fail without the Access-Control-Allow-Origin header.
Can I use application/json instead of model/gltf+json?
While browsers can parse the file as application/json, it is not recommended. Using the specific model/gltf+json type allows 3D viewers and browser plugins to automatically recognize and render the content as a 3D scene rather than displaying raw code.
Which browsers support the model/gltf+json MIME type?
Most modern browsers do not render model/gltf+json natively like an image; instead, they rely on JavaScript libraries like Three.js, Babylon.js, or Cesium. However, the MIME type is fully supported for data transmission in Chrome, Firefox, Safari, and Edge.
General FAQ
What is a MIME type?
A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.
MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.
MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.
How do I find the MIME type for a file?
You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.
Why are multiple MIME types listed for one extension?
Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.