15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,071
|
||||||
1 | ||||||
Chrome Extention Не работает XMLHttpRequest22.10.2015, 13:26. Показов 6921. Ответов 4
Метки нет (Все метки)
Собственно вот простейший код:
В чём дело? Сразу говорю: в манифесте расширения test.html прописана, остальные скрипты работают, проблема только с описанным. Добавлено через 21 час 26 минут Так, концепция немного изменилась... Оказывается, описанный выше код не работает в Chrome ни в расширении, ни в отдельной html странице. Но при этом отлично работает в IE. Что-то я совсем теперь растерялся....
0
|
22.10.2015, 13:26 | |
Ответы с готовыми решениями:
4
Неправильно работает объект XMLhttprequest XMLHttpRequest XMLHttpRequest XMLHttpRequest() |
30 / 30 / 29
Регистрация: 11.10.2014
Сообщений: 268
|
||||||
22.10.2015, 14:18 | 2 | |||||
scale вы откуда нарисовали?
1
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,071
|
||||||
22.10.2015, 14:47 [ТС] | 3 | |||||
Enough1987, да это просто опечатка. Я на память код перепечатывал, после многочасовых мучений с этим скриптом бошка совсем не варила
Добавлено через 8 минут А решение я нашёл, хотя и не очень понял его суть Решение проблемы оказалось на стороне сервера. Надо было перед ответом добавить
Если кто-нибудь ещё объяснит подробно, что это значит, буду очень благодарен
0
|
22.10.2015, 15:29 | 4 |
Сообщение было отмечено ChildOfFlowers как решение
Решение
и скорее всего, каком-то старом IE, верно? Я почти уверен, что ваша проблема связана с same origin policy
Не по теме: дурацкий перевод на русский этого термина, хотя слово origin в таком контексте, пожалуй, сложно перевести. Вообщем, сути оно не отражает, это именно Same Origin, а не Same Domain Не по теме: куки отправляются автоматически, иначе бы вам пришлось сильно попотеть, чтобы реализовать ajax для своей админки на сайте, например Понятно, что конкретно vk наверняка имеет и дополнительные меры защиты, или какой-нибудь яндекс, но реализовывать такое иногда очень сложно. В расширениях, как и во всяких джаво-андроидах, обычно используются списки разрешений -- манифесты. Вы декларируете, что вам нужно, например, обращаться к такому-то сайту, или вообще ко всем сайтам, и тогда вы будете иметь на это право, без дополнительных условий. Однако, эти же декларации будут показаны и пользователю, во время установки этого расширения. Предположим, вы ставите себе приложение-фонарик, или будильник, а он от вас запрашивает право на доступ ко всем сайтам или личным контактам -- это будет странно, зачем ему это? В то же время, отсутствие таких деклараций гарантирует (ну в идеальном мире, без уязвимостей самих операционных систем и браузеров), что это приложение не сможет воспользоваться этим API. Код
Access-Control-Allow-Origin: * По настройке CORS можете почитать в той же википедии, достаточно указать только доверенные вам домены. для использования звездочки в этом заголовке должны быть очень веские основания, и вы, как говорят, обязательно должны понимать, что делаете. Обычно ее туда ставят во всяких публичных API, где действительно запрос может идти с любого домена, и в фоне -- все данные и так открыты, и их нет смысла скрывать. Но при разработке расширений, я бы рекомендовал воспользоваться манифестами. Как это конкретно сделать -- не спрашивайте, меня хватило всего на пару юзер-скриптов небольших для каких-то сайтов, и то это было очень давно и неправда в конце концов, я не фронтендер, и javascript знаю довольно поверхностно. Первой же ссылкой нагуглил статью на хабре http://habrahabr.ru/post/198652/ , вроде бы там показан более-менее полный цикл разработки.
1
|
15 / 14 / 9
Регистрация: 16.04.2012
Сообщений: 1,071
|
|
22.10.2015, 19:13 [ТС] | 5 |
NEbO, Спасибо большое за разъяснение. С вашей помощью разобрался и переделал всё как надо. В манифесте у меня изначально был указан нужный адрес. Но, как оказалось, он был указан в неправильной форме. Я всего лишь не придал значения буквам www в адресе, за что поплатился двумя днями поисков.
0
|
22.10.2015, 19:13 | |
22.10.2015, 19:13 | |
Помогаю со студенческими работами здесь
5
XMLHTTPRequest XMLHTTPRequest XMLHTTPREQUEST XMLHttpRequest Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |