Is there really a difference in these two calls? If you use getJSON, you still have to declare format=json
in the url...
And you can do the same in $.get()
, and iterate through the JSON-object.
Or am I way off here?
The getJSON() method is used to get JSON data using an AJAX HTTP GET request.
It is a callback function that executes on the successful server request. It also has three parameters that are data, status, and xhr in which data contains the data returned from the server, status represents the request status like "success", "error", etc., and the xhr contains the XMLHttpRequest object.
The following two snippets are equivalent:
$.get("/some/url", {data: "value"}, function(json) { // use json here }, "json") $.getJSON("/some/url", {data: "value"}, function(json) { // use json here });
Saying that a request is for JSON
means two things:
Accept: application/json
headerA number of server-side frameworks (such as Rails) automatically detect the Accept
header and handle the request appropriately. If you are using a different framework or rolling your own, you can inspect the Accept
header to detect the format (instead of inspecting the parameters).
I think the documentation explains it quite clearly!
http://docs.jquery.com/Ajax/jQuery.get#urldatacallbacktype
Load a remote page using an HTTP GET request.
http://docs.jquery.com/Ajax/jQuery.getJSON#urldatacallback
Load JSON data using an HTTP GET request.
Remember, these are just abstractions of the .ajax method
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With