Delphi的WebSocket服务器实现

12

你可以尝试使用我们的WebSockets库。点击此处 - Arnaud Bouchez
@ArnaudBouchez,很抱歉,但是你的websocket库失败了:没有ssl(除了httpd.sys之外,这是Windows而不是mormot),没有稳定的压缩(启用服务器和客户端的压缩:客户端挂起),没有稳定的身份验证(已经为此烦恼了两天),文档很糟糕(有很多信息但几乎完全无用,就像真正的微软风格),许多东西缺乏示例...我试图客观地说。别误会,SQLite基础非常强大和稳定,但是websocket实现还有很多需要改进的地方。对不起,希望我是错的。 - Tuncay Göncüoğlu
2
@TuncayGöncüoğlu 是的,目前还没有SSL支持,据我所知,WebSocket在RFC级别上也没有官方认证和压缩功能,因此我不明白你的意思。实际上,在mORMot SOA中我们使用自己的二进制格式,并使用框架认证、自己的压缩(SynLZ)和加密(AES)。我们已经开始在大量事件的生产环境中使用它。当然,在mORMot基于接口的SOA功能之外,这个单元有点粗糙,因为你必须重新发明一切,但听起来很稳定(即使在多线程中)并且使用了较少的资源。 - Arnaud Bouchez
4个回答

8

André Mussche(AsmProfiler的作者)的最新版Indy实现可以在这里找到。


对我来说非常好用 +1 - Kapytanhook
1
对于任何看到这个答案的人,你可能会注意到André已经停止了他的实现工作。Chee Wee Chua在他的分支上非常活跃:https://github.com/chuacw/WebSockets - Dave Nottage

3

这里还有两个项目:

  • bauglir-websocket - 使用Pascal和C#实现的WebSocket服务器/客户端;
  • ics-websockets - 基于Internet Component Suite (ICS)的Delphi WebSockets服务器;

3

1

WServer组件文档没有明确说明是否可以同时使用相同的端口(80)进行普通HTTP和Websockets。您知道他们的库是否支持这种情况吗? - mjn
2
我目前在80/443上使用他们的SSL组件来处理HTTP和HTTPS。但是我仍在评估他们的WS组件,所以我现在无法给你答案。也许可以尝试联系他们的支持邮箱,我一直发现他们回复迅速且专业。 - Rick Wheeler
您可以在WSServer组件中使用LocalPort属性。因此,假设您还没有在80端口上监听任何内容,您可以将LocalPort设置为80,该组件将在80端口上进行监听。正如Rick所提到的,随时发送电子邮件至support@nsoftware.com,我们将在24小时内回复您(通常更快)。 - Brandon
Rick发布的链接已经失效,但您仍然可以从https://www.nsoftware.com/ipworks/ws/#plat-delphi访问信息。 - Brandon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接