如何在DataSnap 2010中获取客户端IP

时间:2010-01-29 18:25:23

标签: delphi delphi-2010 datasnap

有人可以告诉我如何从服务器端获取连接会话的客户端IP吗?

由于

2 个答案:

答案 0 :(得分:5)

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;

答案 1 :(得分:3)

您查询Request.RemoteAddr以获取所连接客户端的IP地址。