码迷,mamicode.com
首页 > 其他好文 > 详细

基于HTTP的DataSnap session管理

时间:2014-09-05 17:43:11      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:des   http   os   io   ar   for   cti   sp   on   

uses System.StrUtils, Datasnap.DSSession, SessionStoreObjectUI;

function TServerMethods1.EchoString(Value: string): string; begin   Result := Value; end;

function TServerMethods1.ReverseString(Value: string): string; begin   Result := System.StrUtils.ReverseString(Value); end;

//客户端调用http storeobject方法存储session key

function TServerMethods1.StoreObject(key, a, b, c: string): string; var   Session: TDSSession;   Inst: TMySessionClass;   Dest: String; begin   Session := TDSSessionManager.GetThreadSession;   if Assigned(Session) then   begin     Inst := TMySessionClass.Create;     Inst.a := a;     Inst.b := b;     Inst.c := c;     Session.PutObject(key, Inst);

    //return the URL wish Session ID in it for     //testing getting the session data back     Dest := ‘http://localhost:8080/datasnap/rest/TServerMethods1/GetObject/‘ + key + ‘?sid=‘ + Session.SessionName;

    Form3.SetThenText(Dest);

    Exit(Dest);   end;

  Result := ‘Failed to add the object to the session‘; end;

//客户端调用http getobject获得session内容

procedure TServerMethods1.GetObject(key: string; out a, b, c: string); var   Session: TDSSession;   Inst: TMySessionClass; begin   Session := TDSSessionManager.GetThreadSession;   if Assigned(Session) then   begin     Inst := TMySessionClass(Session.GetObject(key));     if Assigned(Inst) then     begin       a := Inst.a;       b := Inst.b;       c := Inst.c;       Exit;     end;   end;   a := ‘Failed to load data for key: ‘ + key; end;

基于HTTP的DataSnap session管理

标签:des   http   os   io   ar   for   cti   sp   on   

原文地址:http://www.cnblogs.com/HuiLove/p/3958230.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!