历史版本5 :登录登出action监听接口 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

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