Identify valid JSON strings and fix Android Content-type headers

Previously, if the data value being sent was already a JSON string, the
content-type was not being set correctly.

Additionally, Android devices don't seem to like having the Content-type
value being set directly in the headers from openFL. Instead we can set it
via flash.net.URLRequest::contentType