2008-08-31 128 views
1

我想讓用戶能夠通過站點與其他用戶進行通信。我知道ASP.net是無狀態的,但是我可以使用這種同步通信? Java servlets?頁面之間的通信

回答

2

我不認爲你需要設置Java只是爲了使用一個servlet。我會使用AJAX和數據庫。我不知道ASP.NET,但我的PHP在這種情況下是相似的,基本上也是「無狀態的」。如果你想在兩個不同的用戶之間顯示某種異步通信,比如說,來自兩個不同的會話,沒有很多刷新(如聊天),你可以讓AJAX頁面不斷輪詢數據庫中的新消息,並在他們進來。你也可以使用AJAX來插入新的消息,給用戶讀/寫這個消息數據結構的訪問權限。由於「其他」用戶正在做同樣的事情,所以當用戶B鍵入它們時,用戶A應該看到新消息彈出。

這是你的意思嗎?

+1

如果你確實走下了AJAX之路,那麼值得看看SignalR這樣的事情,讓它更有趣,而不是輪詢驅動,這裏有一個示例聊天應用程序:https://www.codeproject.com/Articles/562023/ASP-NET-SignalR聊天室 – Shaun 2017-12-14 10:07:26

0

ASP.NET是「無狀態的」,但它使用會話保持狀態。您可以使用它們默認使用會話[]關鍵字。

有關Microsoft的一些詳細信息,請參閱ASP.NET Session State

1

可以使用應用程序上下文在Java Servlet中執行消息傳遞解決方案。在應用程序上下文中作爲屬性存儲的對象在Web應用程序中的任何位置都可見。

更新:像功能聊天......我想這應該是AJAX輪詢你的消息結構存儲在應用程序的上下文,除非你想使用像小程序的東西。

1

您可能不想使用聊天消息等會話,但您可能可以使用某種類型的使用MSMQ的排隊實現。

聊天的方法可以用許多不同的方式完成,這只是一個建議我的頭頂。

0

不知道,如果它的任何好處,但有一個聊天的servlet here,可能是使用或如果你決定去了Java路線從學習有用...