2008-08-31 97 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路线从学习有用...