How to customize the login interface in FineReport
When logging in to the platform, I do not want to use the default built-in login interface of FR. I want to implement the login operation through a customized login interface. The built-in login interface is as shown below:
#Log in to the interface, obtain the user name and password values, and send them to the reporting system. The reporting service accesses the authentication address with these two parameters for authentication.
Customized login interface
Login interface settings
Customized html login page: Name it login.html and save it under %FR_HOME%\WebReport. The code is as follows:
<span style="font-family: 'Microsoft YaHei', 微软雅黑, SimHei, tahoma, arial, helvetica, sans-serif; font-size: 14px;"><html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="ReportServer?op=emb&resource=finereport.js"></script> <script type="text/javascript"> function doSubmit() { var username = FR.cjkEncode(document.getElementById("username").value); //获取输入的用户名 var password = FR.cjkEncode(document.getElementById("password").value); //获取输入的参数 jQuery.ajax({ url:"http://localhost:8075/WebReport/ReportServer?op=fs_load&cmd=sso",//单点登录的管理平台报表服务器 dataType:"jsonp",//跨域采用jsonp方式 data:{"fr_username":username,"fr_password":password},//获取用户名密码 jsonp:"callback", timeout:5000,//超时时间(单位:毫秒) success:function(data) { if (data.status === "success") { window.location=data.url;//认证成功跳转页面,因为ajax不支持重定向所有需要跳转的设置 //登录成功 } else if (data.status === "fail"){ alert("用户名或密码错误");//登录失败(用户名或密码错误) } }, error:function(){ alert("超时或服务器其他错误");// 登录失败(超时或服务器其他错误) } }); } </script> </head> <body> <p>请登录</p> <form name="login" method="POST"> <p> 用户名: <input id="username" type="text" /> </p> <p> 密 码: <input id="password" type="password" /> </p> <input type="button" value="登录" onclick="doSubmit()"/> </form> </body> </html></span>
Dosubmit() is the main logic Judgment realizes the logical implementation process of passing the corresponding value to the report service.
Calling the login interface
Log in to the system, select Management System>Appearance Configuration, and select from the login page options Set the login web page and enter the path of the custom login page: login.html, as shown below:
Summary
For example, if the user has his own system, he will inherit FR to his existing system, and the system will have its own login interface. , I hope to log in to the report while logging into my own system (that is, the entered username and password will also be sent to the report service for authentication), so that when accessing the report, there is no need to log in again, that is, single sign-on. The steps are as follows:
1. Find your system login page such as login.jsp;
2. Introduce finereport.js into the login.jsp page head;
3. Define a function such as dosubmit in the JavaScript of the login.jsp page. Obtain the entered user name and password in dosubmit, and authenticate through iframe or ajax.
4. Set the custom login page address in the FineReport platform system as the login address of your system.
If the OA system or reporting system and the project system are not on the same server, you can perform ajax cross-domain asynchronous single sign-on.
For java system , the username and password can be placed in the session, and the report can be integrated in the same environment. The report can automatically obtain the username and password values for verification.
Restore the default login interface
If you want to restore the default login interface to the system after modifying the login interface in the decision-making system, how should you achieve this? ?
1) Open the installation directory %FR_HOME%\WebReport\WEB-INF\resources and find fsconfig.xml
2) Delete the loginUrl attribute
Right-click the fsconfig.xml file, select Editor to open, delete the loginUrl attribute in the file, as follows, delete login.htm:
At this time, please be sure to close the designer, reopen it, and enter the data decision-making system again to return to the default login interface.
After restoring to the default login interface, if you need to set the login interface again, you can log in with an administrator account and set it up.
The above is the detailed content of How to customize the login interface in FineReport. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

The official account web page update cache, this thing is simple and simple, and it is complicated enough to drink a pot of it. You worked hard to update the official account article, but the user still opened the old version. Who can bear the taste? In this article, let’s take a look at the twists and turns behind this and how to solve this problem gracefully. After reading it, you can easily deal with various caching problems, allowing your users to always experience the freshest content. Let’s talk about the basics first. To put it bluntly, in order to improve access speed, the browser or server stores some static resources (such as pictures, CSS, JS) or page content. Next time you access it, you can directly retrieve it from the cache without having to download it again, and it is naturally fast. But this thing is also a double-edged sword. The new version is online,

The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

This article demonstrates efficient PNG border addition to webpages using CSS. It argues that CSS offers superior performance compared to JavaScript or libraries, detailing how to adjust border width, style, and color for subtle or prominent effect

Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

The article discusses the HTML <datalist> element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

The article discusses the HTML <meter> element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates <meter> from <progress> and ex

This article explains the HTML5 <time> element for semantic date/time representation. It emphasizes the importance of the datetime attribute for machine readability (ISO 8601 format) alongside human-readable text, boosting accessibilit

The article discusses the HTML <progress> element, its purpose, styling, and differences from the <meter> element. The main focus is on using <progress> for task completion and <meter> for stati
