Ошибка XMLHttpRequest расширения Safari 5: INVALID_STATE_ERR: исключение DOM 11

Я экспериментирую с новым JS API расширений Safari 5, и у меня возникла проблема с самого начала, я хочу использовать XMLHttpRequest для получения RSS-канала с веб-сайта, однако после .send() он сразу же запускает ошибки:

Не удалось загрузить ресурс: отменено

Затем, глядя на объект XMLHttpRequest, в статусе говорится: Ошибка: INVALID_STATE_ERR: DOM Exception 11

Я не знаю почему, но это мой код, я надеюсь, что смогу получить совет относительно того, что происходит не так:

var xml = new XMLHttpRequest();
xml.open('GET', 'http://year3.gdnm.org/feed/');
xml.send();

Заранее спасибо.


person unknowndomain    schedule 14.06.2010    source источник


Ответы (3)


Убедитесь, что в Extension Builder вы предоставили своему расширению доступ к сайту. Под заголовком «Доступ к веб-сайту расширения» установите уровень доступа «все» или установите его на «некоторые» и укажите «year3.gdnm.org» в качестве разрешенного шаблона домена.

person Scott Thompson    schedule 16.06.2010
comment
Я проверил это, но это не имеет значения, и, согласно документации Apple, это всего лишь контроль над вставкой контента на страницу: developer.apple.com/safari/library/documentation/Tools/ - person unknowndomain; 18.06.2010
comment
Я не знаю, что вам сказать о документации, я могу сказать вам, что у меня была точно такая же проблема, и добавление домена в список шаблонов решило проблему для моих XMLHTTPRequests. Просто чтобы убедиться, перед публикацией этого я провел эксперимент, в котором я удалил домен, который я пытался получить от XMLHTTPRequest, из моих разрешенных доменов, и я убедился, что больше не могу делать запросы. - person Scott Thompson; 18.06.2010

У меня была та же проблема, и исправление для меня заключалось в том, чтобы добавить:

 http://\*/\*
 https://\*/\*

в мой белый список.
После этого все заработало как положено.

Похоже, это ошибка, потому что в документации говорится, что оставление белого списка пустым эквивалентно тому, что я добавил.

https://developer.apple.com/library/archive/documentation/Tools/Conceptual/SafariExtensionGuide/ExtensionPermissions/ExtensionPermissions.html

person lampis    schedule 23.05.2011

Может быть ошибка в XML страницы "http://year3.gdnm.org/feed/», и Safari не смог разобрать этот документ, отсюда и ошибка.

person mav    schedule 15.06.2010
comment
Я так не думаю, потому что этот код отлично работает, когда он не является частью расширения Safari, а RSS генерируется WordPress, что, хотя и не безошибочно, эта проблема ранее не отмечалась ни в каких XML-запросах. - person unknowndomain; 15.06.2010