我有一个客户端应用程序,它使用HTTP与DataSnap服务器通信。 在TDSServer OnConnect事件中,我想检索有关刚刚连接的客户端的信息(IP和端口),因此我执行以下操作:
procedure TServerContainer.DSServer1Connect(
DSConnectEventObject: TDSConnectEventObject);
var
userIP, userPort: String;
begin
userIP := DSConnectEventObject.ChannelInfo.ClientInfo.IpAddress;
userPort := DSConnectEventObject.ChannelInfo.ClientInfo.ClientPort;
end;
我可以使用 IpAddress 属性获取客户端IP,但我无法获取客户端端口,因为 ClientPort 属性是一个空字符串。< / p>
如果我使用TCP而不是HTTP与我的服务器通信,我可以正确获取这两种信息,但在我的应用程序中我需要使用HTTP。
我做错了什么还是有另一种方法来检索这些信息?
谢谢,
PS:我使用的Delphi版本是西雅图。