0

使用 WebSockets 而不是 AJAX 开发一个有什么优势吗?我浏览了谷歌,但没有找到一个关于如何对 C# 服务器进行 AJAX 调用的示例。

另外,我将如何为玩家创建会话服务器端并能够知道哪个 ajax 调用来自哪个玩家?

4

2 回答 2

3

你的问题由几个问题组成,我会一一回答

1. 使用 WebSockets 而不是 AJAX 开发有什么优势吗?

是的,但您需要认真考虑您的用例。如果网页需要向服务器传递大量消息,则应使用 WebSocket,反之亦然。应该使用 AJAX 来检索数据。正如 Kolink 所说,这意味着 AJAX 非常适合回合制游戏,而 WebSocket 的优势在于处理实时通信。

还有一个叫彗星的中间地带。这种技术使用 AJAX 来完成与 WebSockets 接近的事情,但它代表了对 HTTP 协议的滥用,也是创建 WebSocket 的原因之一。

下面的三个图表应进一步说明差异。如果您需要在网页访问者和服务器之间创建双向通信通道,它们代表了如何使用这些技术:

阿贾克斯:

在此处输入图像描述

彗星:

在此处输入图像描述

网络套接字:

在此处输入图像描述

2. 我浏览了谷歌并没有找到一个关于如何对 C# 服务器进行 AJAX 调用的示例。

尝试以下两种中的任何一种:

哎呀,你问了关于 AJAX 的问题。我对 C# 不是很熟悉,但最好的方法可能是拥有一个 ASP.NET 脚本,您可以对其进行 AJAX 调用。在服务器端支持 AJAX 没有什么特别需要做的。

3. 另外,我如何为玩家创建会话服务器端并能够知道哪个 ajax 调用来自哪个玩家?

这可以通过使用客户端 ID 对每个 AJAX 调用进行身份验证来完成。有时它们也被称为令牌。如果您使用现有的实现,它可能会有一种机制来做到这一点。

于 2012-10-17T19:44:01.450 回答
1

AJAX 适用于回合制游戏。实时游戏几乎需要 WebSockets。

于 2012-10-17T19:26:25.920 回答