代码之家  ›  专栏  ›  技术社区  ›  THI

如何在UI5应用程序中管理会话

  •  0
  • THI  · 技术社区  · 5 年前

    我想确保,如果用户空闲超过30分钟,那么UI5应用程序应该显示一条消息,请求“扩展”或“注销”。如果单击了扩展-->重置计时器。我的问题是,目前,在某些情况下只会执行重置计时器,如-->Odata成功调用、加载一些数据等。但如果用户仅在一个页面上,则假设在30分钟后读取数据-->他已注销,因为没有呼叫发生。但实际上,用户是在线的,没有离开应用程序。如何管理这种情况?我考虑过鼠标事件,并在鼠标移动或按键时重置计时器,但这只会增加每次移动的处理,并且函数调用会频繁地调用重置函数。这里的思维过程是什么?请告知。

    0 回复  |  直到 5 年前
        1
  •  0
  •   Il Maro    5 年前

    你可以用 the storage api in SAPUI5 for sessions ,但我不知道有多少分钟的存储空间。你可以试着玩setInterval

        var view = this.getView();
            view.addEventDelegate({
                onAfterShow: function (oEvent) {
                    setInterval(function () {
                        ...
                        your code
                        ...
                    }, YOUR TIME IN MS);
                }
            }, view);