使用iecors插件的Ajax Post

To get around cross Domain issues in ie8 + 9 I started to write my own XDomainRequest wrapper. Until joy, I discovered the iecors jQuery plugin on github https://github.com/dkastner/jquery.iecors. It works by modifying jQuery's AJAX transaction. I didn't have to modify my plethora of getJSON AJAX calls, which was a welcome sigh of relief.

However, when I use the $.post method response data is returned as a string. This causes problems because throughout the application the functions are setup to process json objects.

I have done a lot of reading around this and I know there are a ton of common pitfalls. But everything seems to work except for post responses. Can I perhaps preprocess post response data to make it an object?

jQuery will usually alter the returned data type based on the response headers. Your script that returns the (hopefully valid) JSON string should emit the Content-Type: application/json header first. Of course, if everything returned is JSON, you could always use

$.ajaxSetup({'dataType': 'json'})