zoukankan      html  css  js  c++  java
  • UNIGUI:How to redirect and close session?

    Hello,

    i would have 2 unigui app.

    the first app is a simple authentification app and second will be the main app.

    I'd like to have the following scenario.

    user "paul" arrive on the auth app

    paul set his login and password.

    the auth app redirect paul  to an other server with some parameters( sended with post method) and session on auth app will close.

    the main app read "post parameters" and begin a user session. on close or on timeout in the main app the user will be redirect to the auth app.

    To sum up,

    how can i do a redirect with parameters (post method) and close current session ?

    • 0

    #2 Delphi Developer

    Advanced Member

    • Moderators
    • 726 posts

    Posted 04 September 2015 - 05:43 AM

    delagoutte, on 03 Sept 2015 - 11:47 PM, said:

    the auth app redirect paul  to an other server with some parameters( sended with post method) and session on auth app will close.

    the main app read "post parameters" and begin a user session. on close or on timeout in the main app the user will be redirect to the auth app.

    To sum up,

    how can i do a redirect with parameters (post method) and close current session ?

    Hi,
    I think there are several ways to redirect to another server with some parameters from the first app, for example, one of these:

    first app:

    procedure TMainForm.UniButton1Click(Sender: TObject);
    begin
      UniSession.AddJS(
        'var f = document.createElement("form"); '+
        'f.action="http://localhost:8079"; '+ // the second app url
        'f.method="POST"; '+
    
        'var i=document.createElement("input"); '+ // username
        'i.type="hidden"; '+
        'i.name="username"; '+
        'i.value="login"; '+
        'f.appendChild(i); '+
    
        'var i2=document.createElement("input"); '+ // password
        'i2.type="hidden"; '+
        'i2.name="password"; '+
        'i2.value="pwd"; '+
        'f.appendChild(i2); '+
    
        'document.body.appendChild(f); '+
        'f.submit(); '
      );
    end;

    ..and session on auth app will close...

    I think here too, there are several ways maybe you can use the timer in the first app after the call redirection ??:

    procedure TMainForm.UniTimer1Timer(Sender: TObject);
    begin
      UniSession.Terminate();
    end;

    second app:

    firstly, need to analyze the demo project:

    C:Program Files (x86)FMSoftFrameworkuniGUIDemosDesktopURLParameters...

    ..on close or on timeout in the main app the user will be redirect to the auth app...

    UniServerModule.ServerMessages.TerminateTemplate..:

    http://forums.unigui...ose/#entry28523

    <html>
    <script>
    function redirect() {
        location.href = "http://localhost:8077"; // first app url
    }
     window.onpaint = redirect();
    </script>
    <body bgcolor="#dfe8f6">
    </body>
    </html>

    Try...

    Best regards.

    • 0
  • 相关阅读:
    python中如何将两个list合并成一个list,不用for语句
    python print的用法
    Pandas Timestamp 和 python 中 datetime 的互相转换
    python eval, exec. compile
    python 用 __all__ 暴露接口
    python functiontools 模块
    Python 修饰符, 装饰符
    Python 字典(Dictionary) update()方法
    Python :random 随机数生成
    Pandas dataframe 标记删除重复记录
  • 原文地址:https://www.cnblogs.com/wxb-km/p/4788408.html
Copyright © 2011-2022 走看看