|
|
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток. 1. Есть задача, сделать переписку между пользователями как в контакте. Т.е. чат с функцией "печатает". Подскажите плиз как делается. Видел у друга "онлайн консультант" свой. Он говорит что повесил ajax запрос на Jabber. Но в моем проекте жаббер сервака не будет. Т.е. буду стучать постоянно а БД. Посмотрел на его сайт. Там висит ajax запрос в течении одной минуты, потом обрывается и стартует новый. Как я понимаю там стоит вечный цикл с паузой 60 000 милисекунд, который постоянно вешает запрос. (setTimeout знаю, не надо в него тыкать) А вот как повесить такой запрос не знаю. Обычно ajax отработал, вернул, закончился. (Думаю это связанно как-то с синхоностью/аснихронностью) В общем подскажите как повесить такой зарос. Чтоб он работал 60 сек. Ну и подскажите в ту ли я сторону копаю? 2. Вместе с этим родственная задача. Надо сделать на сайте у пользователей статус "Онлайн/Оффлайн". Как это делается что-то не пойму. Даже если и повешу запрос, что им щупать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 09:44 |
|
||
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
exist, подумайте над тем, чего ждёт браузер (клиент) после того, как отправил запрос серверу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 10:26 |
|
||
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
Нужно реализовать клиентскую и серверную части вашей логики : в Самом простом варианте это будет так : У Вас есть главная страница index.jsp на ней подключены js скрипты Есть <div id="userId"></div> в него будем писать время (в идеале это может быть статус , все что угодно) Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Javascript который будет реализовывать пулинг каждые 10000 секунд. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. логика определения активности пользователя ... его статусов на основе активности сессии или других параметров, запросы к базе данных (в данном случае просто вернем дату с сервера) status.jsp Код: html 1. 2. 3. 4. 5. 6. опять же таки тут много тонкостей и организовывать это надо немного иначе (javascript через функции callback итд) но для понимания механизма - этот пример сойдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 10:53 |
|
||
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
Наверное я не правильно описываю задачу. Честно говоря не первый раз получаю не тот ответ. Т.е. как по интервалу запускать Аякс я знаю. Меня интересует настройка "висящего" Аякс запроса. Я видел что так можно. Т.е. вместо того чтоб каждую секунду гадить запросами (а нужно именно так, ибо нужно ловить нажатия клавишь на сторонах клиентов), я хочу повесить "канал"/"аякс-запрос" который один будет висеть 60 секунд, а потом опять же его. Ещё раз говорю, видел в консоли как это работает. К сожалению с этого сайта убрали конусльтанта. И пример не могу привести. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 11:29 |
|
||
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
exist...интересует настройка "висящего" Аякс запроса...не "висящего" а "длинного" Длинные опросы (long poll) . P.S.: кстати, первая ссылка в гугле по запросу: "длинный ajax запрос". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 12:41 |
|
||
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
Ну и конкретно для вашей серверной стороны готовые библиотеки, которые реализуют не только WebSockets: https://github.com/learnboost/socket.io/wiki#in-other-languages ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 13:01 |
|
||
|
Помогите с ajax
|
|||
|---|---|---|---|
|
#18+
Буду изучать вопрос. Всем спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2013, 15:06 |
|
||
|
|

start [/forum/search_topic.php?author=sokoloff&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
get settings: |
6ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 658ms |
| total: | 824ms |

| 0 / 0 |
