zoukankan      html  css  js  c++  java
  • 基于HTTP的DataSnap session管理

    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;

  • 相关阅读:
    浏览器的宽、高度
    表格 强制换行
    post请求
    js验证正则
    js去除空格
    表格事件,表格删除行
    AJAX初始化combox 并取值
    组脚视图
    Git 常用命令
    NSPredicate 根据谓语动词 进行 模糊查询
  • 原文地址:https://www.cnblogs.com/HuiLove/p/3958230.html
Copyright © 2011-2022 走看看