sgcWebSockets 2022.9

· 版本发布

Rad Studio 

[+] : 新增对 Linux Indy 服务器(WebSocket 和 HTTPS 服务器)上 EPOLL 的支持。IOHandlerOptions.IOHandlerType 属性新增值 iohEPOLL。

[+] : 在 Indy 服务器上新增属性 "IOHandlerOptions.EPOLL",用于配置 EPOLL IOHandler 服务器属性。
[+] : 新增演示,展示 Indy EPOLL 服务器的工作原理,位于 "03.WebSocket_High_Performance_Server\03.Indy_EPOLL_Server" 文件夹。
[+] : 改进 Windows Indy 服务器(WebSocket 和 HTTPS 服务器)上的 IOCP。IOHandler 已从头重写,性能得到优化。
[+] : 改进 Google OpenAPI 客户端:
- 新增属性 ServiceAccountOptions,允许通过域级委托使用 Calendar API 等 API。
- 新增方法 ClearOAuth2Token,在使用 OAuth2 认证时强制对 Google 服务器重新进行身份验证。
- 服务器返回 401 错误时,现在清除内部 OAuth2 令牌,下次客户端将请求新的身份验证。
[+] : 改进 TsgcHTTPGoogleCloud_Calendar_Client,现在支持使用服务账号和域级委托进行身份验证。
[+] : 改进 SChannel IOHandler,现在实现 SCH_CREDENTIALS 以替代已弃用的 SCHANNEL_CRED。

[*] : 修复 Google Calendar 客户端错误,令牌刷新时请求同时发送了旧令牌和新令牌。
[*] : 修复 TsgcWSPServer_sgc 错误,某些情况下访问内部队列时可能引发访问违规。
[*] : 修复 JWT 错误,使用 openSSL 1.1 或 3.0 时 ES 算法出现访问违规。
[*] : 修复编译 iOS64 错误,sgcIdSSLOpenSSLHeaders_static.pas(1284): E2035 实际参数不足。
[*] : 修复 Delphi 10.3 和 11.0 上 Linux 版 sgcWebSockets 配置包错误。

.NET 

[+] : 改进 Windows Indy 服务器(WebSocket 和 HTTPS 服务器)上的 IOCP。IOHandler 已从头重写,性能得到优化。

[+] : 改进 SChannel IOHandler,现在实现 SCH_CREDENTIALS 以替代已弃用的 SCHANNEL_CRED。

[*] : 修复 JWT 错误,使用 openSSL 1.1 或 3.0 时 ES 算法出现访问违规。