REST Responses stored and replayed from cache don't keep their original Content-Type header. This problem exists in Magnolia 5.7 and 6+.
If requests bypass the cache the Content-Type is set correctly, but if the response is stored in cache and then replayed the Content-Type header is lost.
For us this only happens for JSON responses we serve from a REST endpoint, but i think this happens to every response without an extension.
I think the problem is caused by the replay function in ContentCachedEntry.java. Here, the content type is always overwritten regardless of the current value of the response. If getContentType() returns a null value the original Content-Type will always be deleted.