Jquery Ajax не работает - PullRequest
       0

Jquery Ajax не работает

0 голосов
/ 18 августа 2011

У меня есть следующее div в моем html

<div class="result">loading</div>

И мой javascript выглядит следующим образом.

$(document).ready(function() {
      $.ajax({
          accept: 'application/rss+xml',
          url: 'http://www.madhyamam.com/taxonomy/term/19/rss.xml',
          success: function(data) {
            $('.result').html(data);
         }
    });
});

Но по некоторым причинам ..Кажется, он не работает.

В jsfiddle

XML возвращен (firebug):

Ошибка синтаксического анализа XML: элемент не найден Расположение: moz-nullprincipal: {9ec69805-af82-4f95-979a-f8e68d415124} Строка № 1, столбец 1:

^

Решение * Я обошел проблему, используя трубу Yahoo.И все работало нормально. *

Ответы [ 2 ]

7 голосов
/ 18 августа 2011

Вы не можете отправлять запросы Ajax к URL-адресам, которые не имеют того же домена, порта и протокола, что и текущая страница. Одинаковая политика происхождения запрещает это.

Наиболее распространенный обходной путь - наличие серверного сценария, который извлекает содержимое и передает его через Ajax.

0 голосов
/ 18 августа 2011

Как упоминал Пекка, мы предполагаем, что ваша проблема в том, что Ajax не может делать запросы на URL других доменов.Для этого вы должны использовать серверный скрипт.

Пример небольшого php серверного скрипта для тестирования (из Jquery Minime Feed Library ):

<?php
header('Content-type: text/xml; charset=utf-8');
$url = htmlspecialchars($_GET['url']);
echo file_get_contents('http://'.$url,0); 
?>

Затем вы можете позвонить примерно так:

$.ajax({
    accept: 'application/rss+xml',
    url: 'http://youserver/getfeed.php?url=http://www.madhyamam.com/taxonomy/term/19/rss.xml',
});

Однако, похоже, вы хотите показать RSS-ленту на своей странице.Я перешел к той же проблеме и прекратил использование библиотеки Jquery Minime Feed , которая поможет вам выполнить работу:

$('#test1').minimeFeed('http://index.hu/24ora/rss/');

Автоматически использовать серверный сценарий, если это необходимо, и выдает довольно хороший вывод.См. демо здесь

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...