Поддерживать работу приложения и сервера? - PullRequest
0 голосов
/ 01 мая 2018

Мне было интересно, как крупные компании делают так, чтобы приложение и ответ сервера оставались синхронизированными, даже если пользователь не обновляет свое приложение?


Как, скажем, я пользователь и использую приложение

Приложение 1.0

let data_name = data["data_name"]
print("Hello " + data_name + "!")

Сервер 1.0

echo('["data_name": "BOB"]');

Все отлично работает, приложение печатает

Привет, ЛПП!


Но что, если я обновлю приложение и сервер тоже, и я изменю переменную data_name на user_name, НО пользователь не обновить его старое приложение?

Приложение 1.0

let data_name = data["data_name"]
print("Hello " + data_name + "!")

Сервер 2.0

echo('["user_name": "BOB"]');

ОШИБКА: имя-данных равно NULL


Как крупные компании справляются с этим?

Если я не обновлю какое-либо приложение, оно через несколько месяцев будет работать отлично ...

(Кстати, я видел, что они могут обновить приложение, даже если пользователь не загружает обновление ..)

1 Ответ

0 голосов
/ 01 мая 2018

Версионные API. Сервер поддерживает несколько версий своего API. Старые версии приложения запрашивают данные, используя старый API. Новые версии используют новый API. Это может быть так же просто, как передача номера версии в качестве аргумента API, и сервер отвечает соответственно.

Также обратите внимание, что некоторые приложения заставляют вас обновляться. Это так, что сервер должен поддерживать только последний API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...