EXTjs: как прочитать RSS-канал со страницы Ashx в магазине? - PullRequest
1 голос
/ 21 августа 2011

Я хочу получить RSS-поток страницы Ashx в магазине EXTjs.Он отлично работает с XML-страницей.но когда я проверяю его на странице Ashx, это не так!

ссылка: http://met.guc.edu.eg/Feeds/Course.ashx?c=240

    var store = Ext.create('Ext.data.Store', {
        autoLoad: true,
        proxy: {
            type: 'ajax',
            url: 'http://met.guc.edu.eg/Feeds/Course.ashx?c=240',
            reader: {
                type: 'xml',
                record: 'item',
            }
        },
        fields: ['title','category','pubDateParsed'],
        groupField: 'category',
        sorters: [{property: 'pubDateParsed', direction: 'DESC'}]
    });

Ответы [ 3 ]

2 голосов
/ 21 августа 2011

Вероятно, ваша проблема в том, что браузер не позволяет вам получать фид из-за той же политики происхождения .

С традиционным вызовом AJAX вы можете толькосвязаться с сайтом, на котором размещена ваша страница (если вы не измените настройки, чтобы разрешить это).

Вам потребуется настроить прокси-страницу на своем сайте, которая будет извлекать и отображать данные, или запускать ее.через что-то вроде Yahoo!Каналы до преобразуют XML в JSON и используют динамический тег сценария, который не имеет тех же ограничений политики происхождения.

1 голос
/ 26 апреля 2012

Я думаю, вам нужен прокси как:

proxy: {
type: 'ajax',
url: 'http://met.guc.edu.eg/Feeds/Course.ashx?c=240',
reader: {
     type: 'xml',
     root: 'channel',
     record: 'item'
}
1 голос
/ 21 августа 2011

Я думаю, что есть какой-то фильтр, который запрещает доступ.

Итак, я могу ping met.guc.edu.eg.nslookup сказал, что у met.guc.edu.eg есть ip: 62.241.151.180 ... но http:/62.241.151.180/Feeds/Course.ashx?c=240 возвращает 404.

Я даже не могу подключиться к нему через telnet, чтобы получить ответ без браузера.

Когда я пробую это из кода ExtJS, я получаю Ошибка 403 .

...