AJAX по файлу: // - PullRequest
       8

AJAX по файлу: //

1 голос
/ 30 января 2011

Я создал приложение на основе AJAX. Он отлично работает, когда я использую свой сервер Apache как http://localhost:8081/, но когда я пытаюсь напрямую открыть файл .html в браузере по префиксу file: //, он не может перейти на другие страницы с помощью ajax.

http://localhost:8081/ works perfect

file:///Users/devbrats/Documents/WimBim/www/index.html#Login.html никогда не загружает Login.html внутри index.html body div

почему это так?

Ответы [ 3 ]

1 голос
/ 30 января 2011

Разные браузеры накладывают немного разные ограничения, когда речь заходит о запуске JavaScript для файлов: ///, но в целом они накладывают более строгие ограничения, чем при запуске с веб-сервера.Последнее, что я проверил, Chrome, по крайней мере, полностью запрещает XHR в этом сценарии.

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

1 голос
/ 30 января 2011

Я не думаю, что это возможно. Я всегда пишу код прямо со своего сервера (который находится на моем компьютере для разработки) или с помощью ftp в него Shiftedit (что действительно здорово)

0 голосов
/ 30 января 2011

Ajax-запросы работают только с URL-адресами того же хоста, что и веб-страница, с которой он вызывается. Локальные файлы не работают, потому что это создает угрозу безопасности, потому что любой сайт может загрузить локальный файл и отправить его на хост.

Быстрый поиск в Google дал мне эту ссылку: http://docs.phonegap.com/phonegap_file_file.md.html#File (только для Android и BB)

http://docs.phonegap.com/phonegap_storage_storage.md.html#Storage (Android, BB, iphone)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...