Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.01.2012, 08:41
Аспирант
Отправить личное сообщение для AquaGen Посмотреть профиль Найти все сообщения от AquaGen
 
Регистрация: 01.03.2009
Сообщений: 41

не работает кросс-доменный ajax
надо json получить с другого сервера.
$.ajax({
	url: "http://***",
	dataType: "json",
	success: function( data ) {
		alert(data);
	}
});

ничего не работает. с .getJSON() тоже самое. если файл на сервере открывать то alert() открывается, а если с другого сервера, ничего совсем не происходит
Ответить с цитированием
  #2 (permalink)  
Старый 26.01.2012, 08:47
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

В общем случае нельзя получить данные с чужого сайта.
Но для некоторых частных случаев можно
http://javascript.ru/ajax/cross-domain-scripting
http://javascript.ru/ajax/cross-origin-2
Но, эти способы имеют ряд ограничений, и для них как правила необходимо внести изменения на сайте-доноре.
Если сайт-донор принадлежит вам, то внести эти изменения не вызовет трудностей, но если он вам не принадлежит, то как правило данные нельзя получить, потому что владелец не вносил изменения в свой сайт, чтобы кто-то могу легко получить данные со своего сайта
Ответить с цитированием
  #3 (permalink)  
Старый 26.01.2012, 08:51
Аспирант
Отправить личное сообщение для AquaGen Посмотреть профиль Найти все сообщения от AquaGen
 
Регистрация: 01.03.2009
Сообщений: 41

так апи чужих сайтов никак невозможно использовать? O_o
вот в примере jqueryui.com/demos/autocomplete/#remote-jsonp работает с http://ws.geonames.org/searchJSON, а я хочу данные с http://api.myshows.ru/shows/search/?q=theory никак нельзя их получить?
Ответить с цитированием
  #4 (permalink)  
Старый 26.01.2012, 09:50
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от AquaGen
так апи чужих сайтов никак невозможно использовать?
Вы внимательно читаете, то что я пишу?
Если у сайта есть API предназначенное для внешнего использования javascript-ом, то разумеется можно.
Сообщение от AquaGen
вот в примере jqueryui.com/demos/autocomplete/#remote-jsonp работает с http://ws.geonames.org/searchJSON, а я хочу данные с http://api.myshows.ru/shows/search/?q=theory никак нельзя их получить?
в первом примере используется JSONP, а на втором сайте API предоставлено в JSON формате
Ищите API в JSONP формате, либо пробуйте варианты из ссылок выше
Ответить с цитированием
  #5 (permalink)  
Старый 26.01.2012, 09:57
Аспирант
Отправить личное сообщение для AquaGen Посмотреть профиль Найти все сообщения от AquaGen
 
Регистрация: 01.03.2009
Сообщений: 41

да все равно не работает
пример из интернета:
$.getJSON('http://twitter.com/users/usejquery.json?callback=?', function(json) { // получение информации о пользователе @ usejquery 
 $('#twitter_followers').text(json.followers_count); // получение числа фоллоуверов из json объекта и размещение в <span>
 });

мой код не работает:
$.getJSON('http://api.myshows.ru/shows/search/?q=doctor', function(json) { 
   alert(); 
 });
Ответить с цитированием
  #6 (permalink)  
Старый 26.01.2012, 10:21
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

twitter в вашем примере возвращает JSONP
Точно также, как и ws.geonames.org
И это позволяет их использовать в качестве API доступного из JS подобным образом

А api.myshows.ru возвращает JSON, что не позволяет его использовать в таком качестве

Пожалуйста внимательней читайте мои ответы Вам:
Для того, чтобы API чужого сайта было доступно из JS, оно должно быть соответствующим образом подготовлено(владельцем этого API)
Ответить с цитированием
  #7 (permalink)  
Старый 11.02.2012, 14:01
Новичок на форуме
Отправить личное сообщение для djvibegga Посмотреть профиль Найти все сообщения от djvibegga
 
Регистрация: 11.02.2012
Сообщений: 1

Вот по этой теме хорошее описание с примерами работающего кода:
http://devdream.net/?p=65,
http://devdream.net/?p=57.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает jQuery меню с AJAX eugene1986 jQuery 0 08.07.2010 18:49
ajax запросы, работает на одних компах и не работает на других vtornik23 AJAX и COMET 2 22.03.2010 18:22
При наборе адреса с www не работает AJAX (JQuery)! madmis AJAX и COMET 3 23.11.2009 19:03
Safari + ajax некорректно работает, а в других работает demi AJAX и COMET 35 15.07.2009 14:11
AJAX - заполнение select - неправильно работает в Mozilla 5.0 С.Тарасов AJAX и COMET 0 17.06.2009 00:58