TsgcHTTPServer › 属性 › Options

Options 属性

捆绑各种服务器行为标志:超时、内置测试页面和 HTTP Server 标头。

语法

property Options: TsgcWSOptionsServer read FOptions write SetOptions;

默认值

ReadTimeOut=10,WriteTimeOut=0

备注

ReadTimeOut 是轮询间隔(以毫秒为单位,默认值为 10);WriteTimeOut 是套接字写入在停滞客户端被丢弃之前可以没有进展的时间(以毫秒为单位),并同时适用于 Windows 和 POSIX (Linux),这有助于防御原本会占用服务器线程的慢读客户端。在默认值 0 下,IOCP 和 EPOLL IO 处理程序(参见 IOHandlerOptions)仍会丢弃写入 30 秒内没有进展的客户端,无论是明文还是 TLS 连接;而默认 IO 处理程序则无限制地等待。因此,当服务器使用默认 IO 处理程序并向大量客户端发送数据时,请设置 WriteTimeOut(例如 30000)。RaiseDisconnectExceptions 在断开连接由协议错误引起时抛出异常。Software 保存在 HTTP Server 标头中发送的值。

Options 与 TsgcWebSocketHTTPServer 共用同一类型(TsgcWSOptionsServer),因此它也带有三个继承但在 TsgcHTTPServer 上无效的 WebSocket 专属子属性:FragmentedMessages 和 ValidateUTF8 控制 WebSocket 帧的分片和验证方式,由于该组件从不接收 WebSocket 帧,两者均无效果。HTMLFiles 和 JavascriptFiles 用于启用内置的 WebSocket 浏览器测试页面及其 JavaScript 客户端;在此同样无效。请将这四项都保留为默认值。

示例


oServer := TsgcHTTPServer.Create(nil);
oServer.Options.ReadTimeOut := 10;
oServer.Options.WriteTimeOut := 5000;
oServer.Active := true;

返回属性