NetworkServerSimple 是一个基本服务器类,不含 NetworkServer 类所具有的任何“游戏”相关功能。
此类不像 NetworkServer 类那样具有场景管理、生成、玩家对象、观察者或静态接口。它只是一个用于监听端口、管理连接和处理消息的服务器。此类在一个进程中可能存在多个实例。
与 NetworkServer 和 NetworkClient 类一样,它允许使用 SetNetworkConnectionClass() 指定为新连接创建的 NetworkConnection 类的类型,因此可以通过此类使用自定义类型的网络连接。
可通过重载虚拟函数 OnConnected、OnDisconnected 和 OnData 或通过注册消息处理程序来使用此类。
connections | 要管理的当前连接的只读列表。 |
handlers | 已注册的消息处理程序函数。 |
hostTopology | 为服务器配置的传输层主机拓扑。 |
listenPort | 服务器监听的网络端口。 |
messageBuffer | 服务器将从网络中读取的数据所存储到的内部缓冲区。这将包含调用 OnData() 时从网络读取的最新数据。 |
messageReader | 绑定到服务器的 messageBuffer 的 NetworkReader 对象。 |
networkConnectionClass | 要为客户端中的新网络连接创建的类的类型。 |
serverHostId | 服务器的传输层 hostId。 |
useWebSockets | 此属性使得服务器监听 WebSocket 连接,而不是常规的传输层连接。 |
ClearHandlers | 清除注册的消息处理程序。 |
Configure | 此方法配置服务器的网络传输层。 |
Disconnect | 此方法会断开相应连接 ID 的连接。 |
DisconnectAllConnections | 此方法会断开所有活动连接。 |
FindConnection | 此方法可以查找指定连接 ID 的网络连接对象。 |
Initialize | 服务器开始监听时调用的初始化函数。可重写此函数以执行自定义初始化,如设置 NetworkConnectionClass。 |
Listen | 此方法将使服务器开始监听指定端口上的连接。 |
ListenRelay | 使用 Relay Server 启动服务器。这是使用 Relay Server 的手动方法;如果已经存在匹配项,常规的 NetworkServer.Connect() 将自动使用 Relay Server。 |
OnConnected | 可重写此虚拟函数以针对新网络连接执行自定义功能。 |
OnConnectError | 出现连接错误时调用的虚拟函数。 |
OnData | 可重写此虚拟函数以在收到连接数据时执行自定义功能。 |
OnDataError | 连接出现数据错误时调用的虚拟函数。 |
OnDisconnected | 可重写此虚拟函数以针对已断开连接的网络连接执行自定义功能。 |
OnDisconnectError | 出现断开连接错误时调用的虚拟函数。 |
RegisterHandler | 该函数针对消息 ID 注册处理程序函数。 |
RemoveConnectionAtIndex | 此方法将从服务器的连接列表删除连接对象。 |
SendBytesTo | 此方法会向已连接的客户端发送一个字节数组中的数据。 |
SendWriterTo | 此方法将 NetworkWriter 对象的内容发送到已连接的客户端。 |
SetConnectionAtIndex | 此方法会将外部代码创建的连接添加到服务器的连接列表中此连接的 connectionId 索引所指示的位置。 |
SetNetworkConnectionClass | 该方法设置创建新网络连接时使用的类。 |
Stop | 此方法会使服务器停止监听操作。 |
UnregisterHandler | 此方法可取消注册已注册的消息处理程序函数。 |
Update | 此函数会使服务器处理传入的网络数据,并发送待处理的传出数据。 |
UpdateConnections | 此函数会导致发送连接上待处理的传出数据,但与 Update() 不同的是,它在服务器未监听时运行。 |