В IE7 отсутствует автообнаружение фида Atom - PullRequest
4 голосов
/ 20 декабря 2008

Я показывал веб-сайт клиенту, который настаивает на использовании IE, и, к моему удивлению, обнаружил, что IE7 не обнаруживает автоматически ленту новостей Atom.

Фид связан с элементом HEAD действительного HTML 4.01 Строгой страницы с <link rel="alternate" type="application/atom+xml" href="atom.xml" title="Atom 1.0">, ссылка указывает на правильный URL, связанный фид является действительным XML-файлом Atom 1.0, который используется как application / atom + xml. и содержит правильный <link rel="self">.

Firefox, Opera, Safari и IE8 beta 2 все правильно определяют канал и подсвечивают соответствующую кнопку адресной строки - это просто IE7, который остается серым. Тот же IE7 без проблем обнаружил новостные ленты в других местах и ​​передал HTML-часть набора для автоматического обнаружения DiveIntoMark с плавающими цветами.

Изменение HREF на полностью определенный URL не имело значения, равно как и изменение TYPE на MIME RSS 2.0 или удаление атрибута TITLE.

Адрес веб-сайта http://www.monteanalogo.net/.

Любой намек на то, что здесь не так?

1 Ответ

4 голосов
/ 20 декабря 2008

Я скопировал ваш источник на мой локальный компьютер, и автоматическое обнаружение IE7 заработало, как только я изменил href на полный URL, а не на относительный:

    <link rel="alternate" type="application/atom+xml" 
          href="http://www.monteanalogo.net/atom.xml" title="Atom 1.0">

Необходим полный URL-адрес, похоже, сбой IE, поскольку RFC для автоматического обнаружения атома утверждает, что:

Значение МОЖЕТ быть относительным URI, и если это так, клиенты ДОЛЖНЫ разрешить его до полного URI ... используя базовый URI документа

Руководство Microsoft для издателей также содержит полный URL-адрес в теге href, но не упоминает о его обязательности:

Вот пример автоматического обнаружения Atom:

<head>
  <link rel="alternate" type="application/atom+xml" 
     title="your feed title here"
     href= "http://www.company.com/feedurl.xml">
</head>
...