Я работаю в Android-проекте, предназначенном для врачей. Врачи должны аутентифицироваться, когда открывают приложение в первый раз.Android - Извлечение данных из удаленной базы данных эффективно
Этот процесс аутентификации выполняется через HTTPS-соединение, используя PHP-код на стороне сервера, который возвращает код JSON в приложение, позволяя ему знать, было ли соединение успешным и, если это так, оно также возвращает этот список врачей. Позвольте мне показать кусок JSON кода, который будет возвращен в случае успешного логина в:
Очевидно, что если вход в систему не увенчались успехом, атрибут «listOfPatients» не будет нести никаких данных. После того, как сервер будет генерировать этот код JSON, приложение просто прочитает его с помощью JSON Parser.
Теперь представьте, что у врача нет только 3 пациентов, но 100 пациентов. И каждый пациент не имеет всего 3 атрибута («Возраст», «Телефон», «Курильщик»), но десятки из них надлежащим образом вложены в случае необходимости. Тогда у нас был бы довольно большой (но, возможно, не слишком сложный) код JSON для чтения.
В этом проекте я разрабатываю код клиента (то есть приложение для Android), тогда как код сервера написан другим парнем. Он спрашивает меня, как я хотел бы, чтобы код сервера был написан для того, чтобы облегчить взаимодействие с Android Client-Server и обеспечить наилучший, самый удобный пользовательский интерфейс.
Я ответил (это на самом деле, короткая версия моего ответа, не беспокойство по поводу безопасности на стороне сервера-кода, так как это не цель этого вопроса):
- Создайте login.php, который позволяет запрашивать POSTS-запросы. Мое приложение отправляет «пользователь» и «пароль», и сервер будет сравнивать его с базой данных.
- Затем сервер будет генерировать соответствующий код JSON в зависимости от успеха запроса входа в систему врача.
- Приложение Android просто проанализирует этот JSON и отобразит его пользователю в виде представлений списка и т. Д. (Способ отображения этих данных для врача не имеет значения здесь в этом вопросе).
мне было интересно, две вещи:
- Зная, что JSON будет содержать сотни атрибутов, насколько эффективен этот код? Есть ли лучший способ достичь этой функциональности? Как бы вы это сделали?
- Значительное большинство значений этих атрибутов будет меняться ежедневно (например, «bodyTemperature» или «bloodPressure»). Кроме того, будут иметься «importantNotifications», где пациенты будут уведомлять своих врачей в случае чрезвычайной ситуации. Я не думаю, что было бы эффективно пройти весь процесс («создать сервер JSON ==> клиент читать JSON ==> клиентский дисплей JSON») снова и снова, через минуту, минуту, час за часом, день за днем , Должен быть лучший способ сделать это (возможно, локальное хранилище?), Тогда мне нужно будет различать, какие атрибуты читать только один раз в год («возраст»), раз в месяц («телефон») один раз в день («bodyTemperature»)) или каждые 30 минут («importantNotifications»). Как я мог затем различать, какие значения мне нужно будет читать из JSON в каждом сеансе?)
Хорошо, хороший ответ, посмотрим, придет ли кто-нибудь еще и поможет нам. Если бы у меня было 10 очков репутации, я бы поставил изображение прямо в вопрос, чтобы сделать его более привлекательным. Нельзя повышать, так как для этого требуется не менее 15 очков репутации. –
У вас еще есть 10 :) В любом случае, я уверен, что до ответа на этот ответ вам будет достаточно, чтобы проголосовать за ответы :) –
Спасибо! Будем надеяться, что разработчики просто решат, что это не вопрос, который стоит прочитать из-за его длительного контента! –