1.7 KiB
1.7 KiB
title | localeTitle |
---|---|
Learn About Jsonp | Узнать о Jsonp |
JSONP
JSONP означает «JSON с отступом». Предположим, вы хотите сделать запросы AJAX в другом домене. Ну, вы не можете сделать это с помощью XMLHttpRequest, как обычно, но вы можете сделать это с помощью тегов скриптов, как показано на StackOverflow :
script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'http://www.someWebApiServer.com/some-data';
Но это уродливо, теперь нам нужно получить элементы JSON из тега скрипта, брутто. К счастью, создатели JSONP думали заранее, поэтому вместо того, чтобы устанавливать наши скрипты, как мы делали выше, мы делаем это:
script.src = 'http://www.someWebApiServer.com/some-data?callback=my_callback';
Это вызывает автоматический обратный вызов после загрузки данных, создавая функцию с данными, необходимыми внутри нее.