У меня возникли проблемы с пониманием того, как работает jsonp-запрос. Я прочитал несколько источников, в том числе wiki, на jsonp, и я все еще очень смущен тем, как обратный вызов фактически захватывает функцию, возвращаемую с сервера при вызове jsonp. Например, в wiki источник запроса устанавливается как:
src="http://server2.example.com/RetrieveUser?UserId=1234&jsonp=parseResponse"
Что именно делает jsonp = parseResponse на самом деле/означает? Затем они говорят, что полезная нагрузка:
parseResponse({"Name": "Foo", "Id" : 1234, "Rank": 7});
Как это работает? Я запутался во всей функции обратного вызова. Имя функции parseResponse передается на сервер, и каким-то образом возвращаемые данные становятся параметрами для этой функции? Может кто-то, пожалуйста, четко объяснить, как данные извлекаются/используются из запроса jsonp?