2013-06-20 6 views
0

Я делаю мобильное приложение и веб-часть для этого же. Я использовал php5 в мобильном приложении, чтобы все api возвращали json-данные. Теперь я хочу использовать те же файлы api, которые размещены на другом сервере, используя jquery, чтобы передать параметры в файл api в данных jquery, а затем получить данные json в ответ. Но я не могу понять, что использование jquery будет безопасным использовать все на стороне клиента? Как создание сеансов и отправка json-данных, возвращаемых одним api на другую страницу с использованием jquery. Я искал какое-то время в Интернете, и у меня есть некоторые решения, которые я должен использовать curl в php, а затем возвращает данные с php, которые вызовут мобильное приложение php, а затем вернет данные в jquery, как это описано ниже:Доступ к PHP api с помощью JQuery

JQuery -> web php file -> mobile-php-api (вернет данные json в файл веб-php) -> jquery

Может ли кто-нибудь дать ценные советы? Что я должен использовать для анализа уже сделанных файлов api с полной аутентификацией в Интернете.

ответ

0

Я не совсем понимаю, какие битое ваши спрашивать о специфический, но здесь идет ...

То, что вы, кажется, описывает создание API REST в PHP и интерфейс в javascript/HTML.

Для простых приложений jQuery и $.ajax() может сделать, но для больших приложений внешнего интерфейса вы можете рассмотреть MVC стиль на стороне клиента структуры, как BackboneJS

Наконец, если на другой странице вы имеете в виду другой домен, ваши вопросы будут либо вращаться вокруг хостинга (или, возможно, проксирования) вашего api через тот же домен, что и ваш внешний интерфейс, или использовать CORS (перекрестный источник ресурсов) для работы в доменах. Поддержка CORS в Internet Explorer плохая, и проверка подлинности CORS в лучшем случае сложна. Возможно, вы захотите рассмотреть OAuth2, если вы решите придерживаться CORS.

+0

Спасибо! Было бы очень полезно. Можете ли вы рассказать мне, что лучше всего использовать между BackboneJS и httpClient? –

+0

Если бы это был я, я бы, вероятно, скопировал какой-то тонкий клиент в PHP, который по сути просто отображает или пересылает запросы API и обрабатывает некоторую аутентификацию в процессе. Я бы, вероятно, использовал [Codeigniter] (http://ellislab.com/codeigniter) для его создания – Iolo

3

Если ваш API не находится в том же домене вашего приложения, использование AJAX не очень эффективное решение из-за междоменных запросов. Некоторые прокси-серверы и браузеры по умолчанию блокируют эти запросы. Я думаю, вы должны использовать cURL, как вы сказали. Или создать реальный WebService с SOAP, но это может быть сложно, если вам нужно быстро ваше приложение.

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

Смежные вопросы