Как да видите най-новите съобщения с AJAX

Нямам представа за това.

Трябва да видя най-новите съобщения от базата данни. (Ако съобщенията все още не се показват на потребителя)

Мога ли да го направя без чести заявки на сървъра? (Имам предвид setTimeout с AJAX заявка)

Още: потребителско въвеждане и изпращане на съобщение до чат, след което чатът се обновява и новото съобщение се показва на всички потребители, които са в този чат.

Благодаря предварително.


person owl    schedule 05.02.2014    source източник
comment
websockets/longpolling/comet... потърсете ги   -  person Marc B    schedule 05.02.2014


Отговори (1)


Няколко идеи, за да започнете, въпреки че наистина е най-полезно в StackOverflow да ни покажете какво сте опитвали преди.

Имате няколко неща, които трябва да направите с това, за да работи с ajax и да не използвате решението websockets (въпреки че websockets вероятно се препоръчва).

Първо, ще ви трябва ajax заявката, за да разберете какво е последното съобщение, което е видял потребителят.

така че, ако приемем, че имате идентификатор на разговор и идентификатор на нишка

1) изпратете ajax заявката от клиента до сървъра с идентификатора на разговора и идентификатора на нишката. Може да се наложи да изпратите и данните си за удостоверяване на потребителя. Нямаме представа къде се намирате в този момент.

2) имате вашата заявка за сървър от db, всички идентификатори на нишки в разговора, където ID на нишка > идентификаторът в заявката за ajax

3) от страна на клиента вземете ajax отговора и актуализирайте клиента с всички получени отговори. Актуализирайте клиента с последния идентификатор на нишка, за да знае какво да изпрати обратно за следващата заявка.

Надяваме се, че това трябва да ви даде начало.

person pedalpete    schedule 05.02.2014