My request header :

GET /abs/ad-content/id/1277954_1 HTTP/1.1
Host: myhost.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13
Accept: application/json, text/javascript, */*
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Content-Type: application/json; charset=utf-8
X-Requested-With: XMLHttpRequest

please be aware:

Content-Type: application/json; charset=utf-8

However it appears my server can't process it.

$request->getHeader('Content-Type');

is came back empty by server.

Should i then add handler/Mime Type to have it work?

Edit: This header exists on my small home windows Apache localhost but missing on Bluehost Apache shared server.

Generally, it's not expected that the GET request includes a body because it is intended to be a safe method just for information retrieval:

Particularly, the convention continues to be established the GET and Mind techniques SHOULD Do not have the significance of taking an action apart from retrieval. These techniques needs to be considered "safe". This enables user agents to represent other techniques, for example Publish, PUT and Remove, inside a special way, to ensure that the consumer is created conscious of the proven fact that a possibly unsafe action has been asked for.

And So I guess Apache or even the programming language/framework you're using skips/omits any entity header fields because it doesn’t expect any that contains entity.