反馈已提交

网络繁忙

当前为10.0版本文档,只有最新版本的文档支持在线编辑修改,如果想创建/编辑文档,请移步至 最新版帮助文档

登录登出action监听接口

  • 文档创建者:susie
  • 历史版本:6
  • 最近更新:Kevin-s 于 2019-06-05
  • 1. 版本

    报表服务器版本JAR 包插件版本
    10.02019-05-20V1.0

    2. 描述

    • 应用场景:10.0 决策平台默认登出时会自动跳转到登录界面,而有的用户可能需要登出时跳转到自定义的登出界面而非登录页。

    • 功能介绍:在决策平台中提供登录登出后事件的接口,用于登录登出后自定义操作。

    3. 接口

    LoginPageProvider

    package com.fr.decision.fun;

    import com.fr.stable.fun.mark.WebCoalition;

    /**
    * 登录页插件接口
    */
    public interface LoginPageProvider extends WebCoalition {

       String MARK_STRING = "LoginPageProvider";

       int CURRENT_LEVEL = 1;

       /**
        * 登录页插件名
        * @return 名字
        */
       String name();

       /**
        * 文本描述
        * @return 文本描述
        */
       String text();

       /**
        * 封面路径
        * @return 封面路径
        */
       String coverPath();


       /**
       * 背景图片路径
       * @return 背景图片路径
        */
       String imgPath();

       /**
        * 背景图片高度(单位像素)
        * 用来控制背景图片的缩放的高度
        * @return 高度
        */
       int imgHeight();

       /**
        * 背景图片宽度(单位像素)
        * 用来控制背景图片的缩放的宽度
        * @return 宽度
        */
       int imgWidth();
    }

    接口接入

    <extra-decision>
       <LoginPageProvider class="com.fr.plugin.decision.login.MyLoginPageProvider"/>
    </extra-decision>


    4. 示例

    4.1 安装 DEMO 插件

    这里提供 fr-plugin-demo.loginout.event-1.0.zip,点击下载后,本地安装该插件,安装后获得如下的接口:

    package com.fr.plugin.demo.loginout.event;
    import com.fr.decision.fun.impl.AbstractLogInOutEventProvider;
    import com.fr.decision.webservice.login.LogInOutResultInfo;
    import com.fr.log.FineLoggerFactory;
    import com.fr.plugin.transform.FunctionRecorder;
    import com.fr.web.utils.WebUtils;
    @FunctionRecorder
    public class CustomLogInOutEventProvider extends AbstractLogInOutEventProvider {
       @Override
       public void loginAction(LogInOutResultInfo result) {
           FineLoggerFactory.getLogger().info(result.getUsername() + " login, ip: " + WebUtils.getIpAddr(result.getRequest()));
           /* 日志输出登录信息 */
           super.loginAction(result);
       }
       @Override
       public String logoutAction(LogInOutResultInfo result) {
           FineLoggerFactory.getLogger().info(result.getUsername() + " logout, ip: " + WebUtils.getIpAddr(result.getRequest()));
           /* 日志输出登出信息 */
           return "http://www.baidu.com";
           /* 跳转到百度页面 */
       }
    }

    4.2 调整日志等级

    安装插件后,点击文件>选项>高级将日志等级(log 级别设置)调整成 INFO,如下图所示:


    image.png

    4.3 查看效果

    登录会有日志信息: xxx login, ip: XXX ,登出时有日志信息: xxx logout, ip:XXX,且登出后跳转到百度页面实现效果。

    1)登录时,日志显示:

    image.png

    2)登出时,日志显示:

    image.png

    3)登出时,跳转到百度页面:

    image.png


    附件列表


    主题: 数据决策系统
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526