What do browsers want for the Content-Type header on json ajax responses? What do browsers want for the Content-Type header on json ajax responses? ajax ajax

What do browsers want for the Content-Type header on json ajax responses?


You may solve the issue by parsing the response into the JSON object by using jQuery funcion parseJSON - http://api.jquery.com/jQuery.parseJSON/

The parameter you pass into the function is the JSON object string, which you extract from the response data:

function AjaxResponse (data) {  // AJAX post callback   var jsonResult = $.parseJSON(data.substring(data.indexOf("{"), data.lastIndexOf("}") + 1));}

Tested (besides Chrome which problem this solves) in FF and IE8 for the following simple JSON result, for other browsers and more complex responses no guarantees...


NOTE: the content type in this case is text/plain or text/html I think - I've used the following ASP.Net MVC function to return the result

ContentResult System.Web.Mvc.Controller.Content(string content);

Where I returned the JSON object like

System.Web.Script.Serialization.JavaScriptSerializer jsonSerializer     = new System.Web.Script.Serialization.JavaScriptSerializer();var jsonResponse = jsonSerializer.Serialize(    new { IArticleMediaId = 0        , ImageUrl = Url.Content(fullImgPath)        });return Content(jsonResponse);


In ajaxFileUpload.js in uploadCallback() replace

io.contentWindow.document.body.innerHTML.innerHTML

with

$(io.contentWindow.document.body.innerHTML).html()