2016-03-17 92 views
0

Я видел отличный пример того, как форматировать файл подкаста RSS в браузере Chrome с помощью XSL-шаблона: http://www.bbc.co.uk/programmes/p002w6r2/episodes/downloads.rss.Невозможно получить RSS-формат с таблицей стилей XSL для работы в Chrome

Я хочу получить то же самое с моим файлом подкаста, но я просто не могу заставить его работать. Он всегда просто отображает файл RSS, но не форматирует его.

Может кто-нибудь, кто знает этот материал, сможет взглянуть и сказать, что я делаю неправильно?

Мои RSS здесь: http://fietsrapport.be/gijs/thenetworkeffect2.rss, шаблон такой же файл с .xsl расширение.

ответ

1

Ну, я тестировал оба с PaleMoon (Firefox fork), и они оба хорошо работают. Я знаю, что у Chrome есть некоторые жесткие ограничения безопасности при применении XSLT-преобразования в XML-контент. Whyever ...

Поэтому я стараюсь аннотирования некоторые различия между подходом BBC и вашим:

  • Ваш XML имеет атрибут standalone на его инструкции <?xml ... обработки. Я не знаю, имеет ли это значение, но различия браузеров в отношении ограничений безопасности, применяемых к XML-XSLT, огромны.
  • Путь к XSLT, указанный в директиве href директивы <?xml-stylesheet type="text/xsl" ..., относительно BBC и абсолютный для вашего сайта. Это очень важно. BBC имеет href="/programmes/downloads.xsl" и у вас есть href="http://fietsrapport.be/gijs/thenetworkeffect.xsl". Кросс-доменное устройство XSLT часто блокируется по соображениям безопасности. Возможно, URL-адрес не распознан в вашем домене?
  • Если у вас есть блокиратор сценариев, такой как NoScript, он наверняка заблокирует XML-XSLT-преобразование, поэтому вы должны отключить его в своем домене.

Остальная часть RSS/XML выглядит довольно изоморфной, поэтому здесь нечего комментировать. Надеюсь это поможет. Поэтому лучше всего было бы изменить путь от абсолютного к относительному.