【问题标题】:Datasnap remove expired sessions DelphiDatasnap 删除过期会话 Delphi
【发布时间】:2022-11-10 23:51:42
【问题描述】:

为公司机械师创建的应用程序通过服务器上活动的datasnap windows 服务进行控制。现在,这些机制经常在路上并与服务器断开连接。当技术人员再次打开应用程序并连接到服务时,会创建一个新会话并且不会删除旧会话。这导致累积了未删除的过期会话。如何确保删除过期的会话?

如果我忘记了一些信息,请告诉我,我将其添加到问题中。

【问题讨论】:

  • @TomBrunberg 在我的情况下,客户端没有异常,它只是创建一个新会话。此外,我不使用TDSRestConnection,而是使用TFDConnection

标签: delphi service firemonkey datasnap


【解决方案1】:

在一些文档形式 embarcadero 之后,我将以下内容添加到我的 DSTCPServerTransport.OnConnect 事件中:

 Event.Channel.EnableKeepAlive(30000);

其中 30000 是毫秒数。

在我的客户端,我在FDConnection.Onrecover 事件中添加了以下内容:

AAction := TFDPhysConnectionRecoverAction.faRetry;

这解决了我未使用的会话的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-16
    • 2011-11-22
    • 1970-01-01
    • 1970-01-01
    • 2021-05-01
    • 2012-09-03
    • 1970-01-01
    • 2012-02-02
    相关资源
    最近更新 更多