最新历史版本 :上次登录信息提示 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

报表服务器版本
10.0

1.2 功能简介

为安全起见,在数据决策系统的「登录」Tab 页下,开启「上次登录信息提示」,开启后每次登录时会提示上一次登录的时间、IP 地址、地点,这样会及时发现登录异常等信息。

2. 操作步骤编辑

2.1 开启上次登录信息提示按钮

管理员登录数据决策系统,点击「管理系统>系统管理>登录」,开启「上次登录信息提示」按钮,如下图所示:

2.2 效果查看

2.2.1 PC 端

那么每次登录数据决策系统时,将提示上次登录信息,如下图所示:

3.png

2.2.2 移动端

以 App 效果为例,如下图所示:

01.jpg

3. 自定义登录页实现上次登录信息提示功能编辑

登录信息的获取是在登录页获取的。

注:使用addLoginInfo(function ())保存登录信息。

3.1 主要代码

1)获取当前客户端 IP 和城市信息:

 // 获取当前客户端ip和城市信息,可以自行更换来源
    function getIpInfo(cb) {
      $.ajax({
        url: "https://cloud.fanruan.com/api/query/ip?timeout=10000",
        async: true,
        dataType: "JSONP",
      }).done(function (data) {
        cb(data);
      });
    }

2) 添加登录信息:

function addLoginInfo(cb) {
      getIpInfo(function (ipInfo) {
        var info = {
          time: BI.print(BI.getDate(), "%Y-%X-%d %H:%M:%S"), // 登录时间,yyyy-MM-dd HH:mm:ss
          ip: ipInfo.ip || "",
          city: ipInfo.provincecity || "",
        };
        $.ajax({
          url: "/webroot/decision/login/info",
          contentType: "application/json",
          type: "POST",
          dataType: "json",
          headers: {
            Authorization: "Bearer " + BI.Cache.getCookie("fine_auth_token"),
          },
          data: JSON.stringify(info),
          success: function (res) {
            cb();
          },
          error: function () {
            alert("超时或服务器其他错误");
          }
        });
      })
    }

3.2 示例

参考 自定义登录界面 设置自定义登录页,HTML 文件为:test.html

若需要在自定义登录页中添加获取上次登录信息提示的功能,代码修改为:login.html

注:示例使用了内置的 FineUI,如果不使用 FineUI 可以直接使用 jQuery 或者原生实现 Ajax 请求,自行实现添加和获取 Cookie 的方法,自行处理当前时间。

4. 注意事项编辑

4.1 上次登录信息显示不准确

问题描述:

登录数据决策系统时,上次登录信息中信息不准确。

原因分析:

登录信息的获取是在登录页获取的,若用户跳过 登录页 直接进入数据决策系统,本次的登录信息将不会记入上次登录信息。

例如:在登录页勾选保持登录状态,进入数据决策系统(已开启上次登录信息提示按钮),上次登录信息显示为时间 1 ,彻底关闭浏览器;不经过登录页,再次进入数据决策系统,此时登录时间为时间 2 ,但上次登录信息仍然为时间 1 。

4.2 不显示上次登录信息

问题描述:

开启了「上次登录信息提示」按钮,但是登录时不显示上次登录信息。

原因分析:

登录信息中的IP和城市,是通过帆软云中心https://cloud.fanruan.com/api/query/ip?timeout=10000获取的。

若服务器无法连通该地址,将无法成功获取上次登录信息。但是对日志记录没有影响。