Существует существующий веб-сайт, написанный на PHP.Первоначально существовал только веб-сайт, но в настоящее время создается приложение для Android, которое выиграет от повторного использования некоторой логики PHP.
Сайт PHP был структурирован таким образом, что существует много страниц, выполняющих действие.информацию об успехе / ошибке в $_SESSION
, а затем перенаправить на визуальную страницу без вывода содержимого.Например, есть action_login.php
:
Страница принимает имя пользователя и пароль (из переменных GET или POST), проверяет учетные данные, устанавливает сообщения об успехе / неудаче в $ _SESSION, а затем перенаправляет вошедшего в системудомашняя страница в случае успеха или вернуться к экрану входа в случае неудачи.Давайте назовем это поведение «ответом HTML».
Приложению Android нужно будет вызвать ту же страницу, но каким-то образом сказать ему, что вместо этого ему нужен «ответ XML».Когда страница обнаруживает это, она выводит сообщение об успехе / ошибке в формате XML вместо того, чтобы помещать их в $_SESSION
, а не будет перенаправлять .Это идея в любом случае.Это помогает предотвратить дублирование кода.Я не хочу, чтобы action_login.php
и action_login.xml.php
плавали вокруг.
Я читал, что заголовок Accept недостаточно надежен для использования (см .: Недопустимый HTTP-браузерПринять заголовки (да, вы Safari и Internet Explorer) ).Мое альтернативное решение - POST xml=1
или использовать {url}?xml=1
для запросов GET.Есть ли лучший способ?
Фреймворки не используются, это обычный PHP.