Ajax Chat длинный опрос

-2

Прочитав этот пост, я решил написать собственное приложение для чата.

В отличие от вышеприведенного сообщения, мое приложение позволяет проводить больше опросов, например, когда пользователь нажимает любую клавишу (чтобы сообщить другой, что пользователь1 что-то пишет) и, очевидно, когда пользователь отправляет сообщение.

Это вызывает некоторые проблемы: часто уведомление ни одного читается правильно, и отправленное сообщение не всегда читается с другой стороны.

Было бы замечательно, если бы был способ отправить и получить различные типы уведомлений (сообщение, предупреждение о новом письме, новый пользователь и т.д.).

Как я могу это решить?

  • 0
    Посмотрите на комету. en.wikipedia.org/wiki/Comet_(programming)
  • 2
    Посмотрите на "удивительный SignalR" signalr.net
Показать ещё 3 комментария
Теги:
wcf

2 ответа

0
Лучший ответ

Я рад сообщить вам, что мое приложение для чата работает сейчас.

Проблема заключалась в двух вызовах службы wcf в одном и том же обработчике событий javascript (кнопка отправки сообщения, где я не уведомлял новое сообщение и предупреждение, такое как "пользователь ничего не пишет", да, мне нужно было сбросить предыдущее предупреждение ("пользователь пишет сообщение..").

Теперь я могу отправлять и получать много уведомлений, и все работает нормально. Я тестировал его с 10 страницами чата.

Конечно, я знаю, что могу добиться большей функциональности и стабильности, используя фреймворк, который вы мне предложили, но я счастлив найти относительное простое, настраиваемое и хорошее решение для моей цели.

0

Сигнал R является решением вашей проблемы. Я понимаю, что вы хотите разработать свое собственное решение и что интрига может быть заманчивой, но, пожалуйста, подумайте о том, как смотреть в SignalR - быть в состоянии справиться и манипулировать SignalR будет платить дивиденды и позволит вам решать подобные проблемы гораздо легче - отличный инструмент для добавления в ваш арсенал разработки.

На самом деле непременно продолжите разработку своего решения, но однажды передайте SignalR для чего-то другого или другого проекта, на который действительно стоит посмотреть как де-факто метод достижения такого типа взаимодействия с клиентским сервером внутри.net. Его можно найти на NuGet, используя ссылку ниже, так что всего за несколько кликов!

http://nuget.org/packages/SignalR

Ещё вопросы

Сообщество Overcoder
Наверх
Меню