Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the correct JSON content type?

I've been messing around with JSON for some time, just pushing it out as text and it hasn't hurt anybody (that I know of), but I'd like to start doing things properly.

I have seen so many purported "standards" for the JSON content type:

application/json application/x-javascript text/javascript text/x-javascript text/x-json 

But which one is correct, or best? I gather that there are security and browser support issues varying between them.

I know there's a similar question, What MIME type if JSON is being returned by a REST API?, but I'd like a slightly more targeted answer.

like image 866
Oli Avatar asked Jan 25 '09 15:01

Oli


People also ask

What is content JSON?

Contents. json files encode the attributes for elements represented by folders in the hierarchy. Each folder can contain one Contents. json file that encodes the attributes for the asset or group it contains.

What is the correct statement about JSON?

What is/ are correct statements about JSON? The JSON format is often used for serializing and transmitting structured data over a network connection. JSON is language-independent, with parsers for each language supported.

What is standard JSON format?

JavaScript Object Notation (JSON) is a standard text-based format for representing structured data based on JavaScript object syntax. It is commonly used for transmitting data in web applications (e.g., sending some data from the server to the client, so it can be displayed on a web page, or vice versa).

What are the basic JSON data types?

JSON defines seven value types: string, number, object, array, true, false, and null. The following example shows JSON data for a sample object that contains name-value pairs.


2 Answers

For JSON text:

application/json 

The MIME media type for JSON text is application/json. The default encoding is UTF-8. (Source: RFC 4627)

For JSONP (runnable JavaScript) with callback:

application/javascript 

Here are some blog posts that were mentioned in the relevant comments:

  • Why you shouldn't use text/html for JSON
  • Internet Explorer sometimes has issues with application/json
  • A rather complete list of Mimetypes and what to use them for
  • The official mime type list at IANA from @gnrfan's answer below
like image 169
Gumbo Avatar answered Oct 13 '22 21:10

Gumbo


IANA has registered the official MIME Type for JSON as application/json.

When asked about why not text/json, Crockford seems to have said JSON is not really JavaScript nor text and also IANA was more likely to hand out application/* than text/*.

More resources:

  • Media Types
  • Request for Comments 4627
  • bluesmoon: JSON has a type
like image 23
gnrfan Avatar answered Oct 13 '22 21:10

gnrfan