Does Content-Type negotiate with kidnappers?
Content-Type is a key HTTP header and the basis of network communication. Just a JSON marker for some, a representation in the commonly overused Rest term for others. It is even more underestimated and neglected than HATEOAS. This deep dive is not only about the specifications and features of Content Type (later referred to as CT), but also about its powerful usage, all sorts of facts and myths and well-crafted API design.
- Why CT isn’t only a tag for (de)serialization?
- How CT is different from MIME type?
- How does CT impact on API design?
- How to create and name custom CT and why?
- What is the correct CT for a spreadsheet or PDF?
- What kind of metadata can be included in CT?
- Can any junior developer enumerate more types than just JSON, except for “legacy” XML?
- How does your web library support other CT?
- More questions than answers… and what Content-Type best describes you?