Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

7
  • 1
    Does the server your requesting the data from actually return JSONP, and it's not the same as regular JSON, as JSONP is wrapped in a function and works completely different from an ajax call. Commented Nov 15, 2013 at 0:08
  • No, to my knowledge, it returns regular JSON. I didn't know that it had to be output in JSONP as well. I haven't seen any mention about that in all my reading. I was of the understanding that JSONP is just a client-side implementation. Is that incorrect? Commented Nov 15, 2013 at 0:11
  • 1
    That is incorrect, JSONP gets around the cross-origin problem by inserting a script tag into the DOM, so it's not really an XMLHttpRequest, but it's neatly wrapped up like one in jQuery, and to get the data from the inserted script the JSON must be wrapped in a function, which would be the callback function, and jQuery creates a random name for that function and calls it when the script has loaded to get the content. In other words, to do a JSONP call, the server has to return valid JSONP, and not just JSON. Commented Nov 15, 2013 at 0:14
  • On the other hand, many API's support CORS, where this isn't an issue ? Commented Nov 15, 2013 at 0:15
  • 1
    The server either returns valid JSONP, it supports CORS, or it's not cross-origin. Commented Nov 15, 2013 at 0:43