Трудность ответа заключается в незнании того, какие серверные ресурсы возвращаются пользователю.
Я сделаю что-то, что может служить примером. Допустим, вы разрабатывали приложение, которое позволяло вам отслеживать в режиме реального времени комментарии, сделанные пользователями на вашем сайте. Мы можем сделать несколько вещей, чтобы сделать это возможным:
- Сервер отслеживает, когда комментарии были добавлены (.created поля)
- API-интерфейс, чтобы получить последние комментарии требуют от нас, чтобы указать, сколько лет комментариев мы хотим
- В представлении запросов и возвращает только те, которые были добавлены с тех пор
models.py
class Comment(models.Model):
text = models.TextField()
created = models.DateTimeField(default=datetime.now())
urls.py
url(r'^comments/latest/(?P<seconds_old>\d+)/$',get_latest_comments),
views.py
def get_latest_comments(request, seconds_old):
"""
Returns comments that have been created since the last given number of seconds
have elapsed.
"""
# Query comments since the past X seconds
comments_since = datetime.datetime.now() - datetime.timedelta(seconds=seconds_old)
comments = Comments.objects.filter(created__gte=comments_since)
# Return serialized data or whatever you're doing with it
return HttpResponse(simplejson.dumps(comments),mimetype='application/json')
На стороне клиента Вы получаете JSON, проверить, если он имеет значение, если это перечисление элементов, и добавьте новые элементы в свой тег <div>
или что угодно.
Как вы можете видеть, развитие API для возвращения только недавно обновленные элементы собирается меняться в зависимости от того, что содержание сервер возвращается.
С вашего вопроса кажется, что вы хотите, чтобы сервер управлял определением того, что было недавно обновлено, а не клиентом (что является хорошей стратегией).В таком случае, что вам нужно сделать, это определить:
- Как сервер будет отслеживать изменения (в моем примере, что это делается с помощью «созданных» полей)
- Как клиент собирается запросить эти изменения
- Как сервер будет определять, какие изменения произошли, чтобы вернуть их клиенту через API?
На странице, с которой вы связались, есть хорошая методика: хеш-содержимое, включающее хеш в ответе, отправку хэша на сервер по таймеру и проверку сервером хэша, чтобы узнать, отправлять ли еще сообщения , С какой частью вам нужна помощь? –