DataSnap Session expired处理。

测试环境:RAD 10.2.3

建立DataSet Server服务端连接oracle数据库。

1.客户端用FDConnection连接服务端,协议为TCP/IP时,当服务端重启,不用再重启客户端。 

2.客户端如果用DSRestConnection时,用产生的代理类进行远程调用时,如果把服务端重启,则会出现http/1.1 403 session expired.

此时要把DSRestConnection的PreserveSessionID设置为False且在服务端把DSHTTPWebDispatcher1的SessionTimeout设置为0即可。

客户端如果用FDConnection连接服务端并用http通信,则不用代理类,直接用FDStoredProc1调用远程函数即可,但需设置FDConnection的CommunicationTimeout为0,

服务端DSHTTPWebDispatcher1的SessionTimeout设置为0即可,否则会出现http/1.1 500 session expired.

同理,如果用SQLConnection用http连接服务端时,也要把它的CommunicationTimeout设置为0。

 

注:如果用FDConnection或SQLConnection,并用http连接时,最好的方法是在执行一个过程后把它们close即可,不用设置CommunicationTimeout这个属性.

posted on 2018-04-14 15:30  天上星  阅读(647)  评论(0编辑  收藏  举报

导航