登录登出action监听接口

编辑
  • 文档创建者:susie
  • 浏览次数:1061次
  • 编辑次数: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


    附件列表


    主题: 数据决策系统
    标签: 暂无标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]