Phonegap / Конвертирование сайта для мобильного использования - PullRequest
0 голосов
/ 27 апреля 2011

В настоящее время я создаю приложение, используя телефонный разрыв для систем Android и iOS. По сути, это будет веб-сайт, но я сталкиваюсь с некоторыми трудностями из-за междоменных запросов, которые мне нужно сделать через ajax (та же политика происхождения). Мне интересно, лучше ли сделать сайт на моих собственных серверах, где разрешен PHP, а затем использовать оболочку / фрейм в phonegap для эмуляции сайта? Как это будет работать?

Помощь оценена

Ответы [ 3 ]

4 голосов
/ 29 апреля 2011

У вас не должно быть этой проблемы вообще. Приложения PhoneGap загружаются на устройство как локальный файл: // pages, и междоменная политика безопасности к ним не применяется.

Из FAQ по PhoneGap:

Q. Я хочу создать приложение для phonegap для доступа к внешне развернутым веб-сервисам через AJAX. Как я могу решить проблему с междоменная политика безопасности XmlHttpRequest?

A. Политика междоменной безопасности не влияет на приложения PhoneGap. Поскольку html-файлы вызываются webkit по протоколу file: //, политика безопасности не применяется. (в Android вы можете предоставить android.permission.INTERNET своему приложению, отредактировав AndroidManifest.xml)

0 голосов
/ 27 апреля 2011

Если я правильно понимаю, вы хотите создать прокси-сервер PHP для междоменной службы, чтобы вы могли получить к нему доступ через мобильное приложение, используя телефонный разрыв? Это довольно распространенная вещь, во Flash она также многое сделала для преодоления междоменных ограничений.

Для одной из моих демонстраций мне нужен доступ к Google Images из Flash. Для этого я создал ОЧЕНЬ простой прокси PHP на моем сервере с именем imageproxy.php. Вот полный код:

<?php
readfile($_POST['url']);
?>

Да, это его. Так что в вашем случае, если вы использовали этот прокси-сервер PHP на вашем сервере, вы бы отправили этому прокси свой целевой URL-адрес в качестве переменной post, и прокси-сервер выполняет запрос и возвращает ответ через readfile ().

0 голосов
/ 27 апреля 2011

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

...