Модуль разработки чата

-3

Я разрабатываю онлайн-приложение для чата в asp.net. Я столкнулся с проблемой, так как предполагают, что два пользователя начинают общение. Когда первый пользователь пишет сообщение в ящике на основе javascript, тогда ajax-запрос отправляется на сервер. BUt, как я открываю второй пользовательский чат, чтобы он отвечал за первое сообщение пользователя?

  • 3
    Боюсь, это бесполезный вопрос. Это далеко, FAR слишком широк.
  • 2
    Это не слишком широко, и это реальный вопрос. Он спрашивает, как показать пользователю 2, когда пользователь 1 печатает сообщение или отправляет сообщение. Я отправлю ответ.
Показать ещё 1 комментарий
Теги:

3 ответа

2

Вы должны исследовать длинные опросы и сетевые сокеты. Это позволяет вашим клиентам получать более эффективные обновления. Вы можете опросить сервер каждые x секунд, но это будет расточительно для ресурсов.

2

Когда пользователь отправляет сообщение, на ваш сервер будет отправлен запрос AJAX, и вы, вероятно, сохраните опубликованное сообщение в базе данных. Вы также можете запросить ajax-запрос каждые X секунд, который проверяет наличие новых сообщений на сервере, и если они есть, он показывает их пользователю.

В качестве альтернативы вы можете использовать технологию Comet, через которую ваш сервер может "нажимать" ответ клиентам, чтобы уведомлять их о каждом новом сообщении.

0

Возможно, вам захочется взглянуть на SignalR, асинхронную сигнальную библиотеку для.NET, которая идеально подходит для чат-приложения:

https://github.com/SignalR/SignalR

Скотт Гензельман имеет хороший пример в своем блоге:

http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx

Ещё вопросы

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