有人能告诉我如何从服务器端获取连接会话的客户端IP地址吗?
谢谢。
procedure TMyDSService.DataSnapServerConnect(DSConnectEventObject: TDSConnectEventObject);
var
Conn: TIdTCPConnection;
begin
Conn := TIdTCPConnection(DSConnectEventObject.ChannelInfo.Id);
Trace('Client ' + Conn.Socket.Binding.PeerIP +':' + IntToStr(Conn.Socket.Binding.PeerPort));
Trace('Client info: ' + DSConnectEventObject.ChannelInfo.Info);
end;
Request.RemoteAddr
来获取连接客户端的IP地址。
DSConnectEventObject.ChannelInfo.Info
总是返回服务器的 IP 地址,这是一个 bug 还是我漏掉了什么? - Alin Sfetcu