Я создаю REST API, который имеет следующие конечные точки:
GET /api/v1/categories - Get all categories
DELETE /api/v1/categories/$id - Delete a specific category
Мобильное приложение получает все категории в первый раз, но позже оно получает только последние измененные категории (используя Last-Модифицированный заголовок HTTP).
Когда второе приложение удаляет категорию, сервер удаляет ее из базы данных.После удаления, если другие приложения запрашивают последние измененные категории, сервер ничего не возвращает об удаленной категории, и эти приложения не удаляют ее из своей локальной базы данных.
Как лучше всего решить эту проблему?
Я думаю использовать мягкое удаление (флаг, указывающий, что категория была удалена), и когда приложения получают последние измененные категории, сервер возвращает все измененные категории с даты, прошедшей в заголовке HTTP, включая удаленныекатегории.Однако если приложения запрашивают все категории (без заголовка Last-Modified), сервер возвращает все категории, кроме удаленных (помеченных флажком).
Является ли представленное решение лучшим решением для этой проблемы?