Сконфигурируйте Firefox, чтобы разрешить тестирование междоменных вызовов JSON Ajax из файла: // URL - PullRequest
0 голосов
/ 27 марта 2011

Можно ли настроить Firefox, чтобы разрешать вызовы JSON / Ajax на мой сервер с html-страницы клиента, загруженной с использованием файла: // protocol ??

Я создаю приложение phonegap, которое загружает вебстраницы, использующие протокол file: // и, следовательно, правила песочницы XSS / XDS не применяются.Это здорово!К сожалению, я могу заставить это работать только от моего Эмулятора Android (см. Ниже для настройки).Он не работает под Firefox на моем клиентском компьютере с Vista.Это разочаровывает, потому что я привык использовать Firebug на клиенте для отладки моего приложения.

FYI, следующая установка работает нормально (но не разрешает отладку Firefox / Firebug) ...

Сервер: Ubuntu, работающий в Virtual Box, Eth0 в режиме моста, node.js, возвращающий сообщения JSON.) Машина разработки (хост): Windows Vista, на которой запущен Eclipse с Android SDK и загружены компоненты Phonegap.стандартный эмулятор Android

Редактировать: в конце концов я отказался от этого и использовал JSONP: /

Ответы [ 3 ]

1 голос
/ 27 марта 2011

Я знаю, что вам нравится Firefox, но вы можете попробовать Safari в Windows, так как он допускает кросс-домен из файла: // и имеет хорошие инструменты в виде веб-инспектора.

Вы также можете попробовать Sleight (https://github.com/alunny/sleight). - очень простой прокси, написанный на NodeJS специально для PhoneGap.

1 голос
/ 29 февраля 2012

Используйте Chrome.Его отладочный модуль почти Firebug с точки зрения качества, и если вы откроете его с помощью

chrome.exe -allow-file-access-from-files

..., он разрешит кросс-файловый доступ.

1 голос
/ 27 марта 2011

Похоже, до Firefox 3, вы можете настроить Firefox для разрешения междоменных запросов, но не больше .

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

  1. Если у вас есть контроль над сервером, вы можете установить заголовок Access-Control-Allow-Origin в своем ответе от сервера (временно) на *, чтобы разрешить любой , чтобы получить данные с вашего URL (не забудьте удалить это позже!).

  2. Использовать прокси.Довольно просто настроить Apache в качестве прокси + обратный прокси для ограниченного количества URL.Это позволяет избежать необходимости касаться кода на стороне сервера и, вероятно, является более быстрым, более пригодным для повторного использования и менее подверженным ошибкам из двух вариантов.

...