摘要:
获得客户端的信息 记得datasnap 2009时,要得到客户端信息,非官方的方法,要去搞什么DSConnectEventObject.ChannelInfo.Id,弄成 TIdTCPConnection。xe2就好得多了。仍然是在DSServer的OnConnect 事件里,DSConnectEventObject.ChannelInfo.ClientInfo就是客户端的信息。能得到啥? 看代码 TDBXClientInfo = recordIpAddress: String;ClientPort: String;Protocol: String;AppName: String;end;也就 阅读全文
摘要:
服务器端如何防止DDOS 前面说到DSServer的OnConnect是socket已经完全搭好client都调用connect的服务器方法了才触发的,如果我们到这里才来想起拒绝不合法的ip连接,已经挺晚了:socket已经连接好了,都已经创建线程开始通讯了。怎么做才能在最开始的socket握手里,就让捣蛋鬼死在萌芽中呢。要解决这个问题,当然得从TDSTCPServerTransport下手,因为ServerTransport才是真正负责通讯的,可以在它的OnConnect事件下手procedure TServerContainer1.DSTCPServerTransport1Connect( 阅读全文
摘要:
TDSAuthenticationManager的用法 xe开始有了TDSAuthenticationManager,这个主要用来做用户认证,用法也很简单 服务器端 1.TDSAuthenticationManager有两个主要的事件 在这个事件里面,看看检测连上来的用户名,密码是否合法,valid 阅读全文