重定向到登入頁面後跳轉原頁面
重定向到登入頁面後跳轉原頁面
- 起因:
網站涉及許可權問題,沒有登入或者登入過期需要重新登入時伺服器會302重定向到登入頁面,但是有登入以後回到原頁面的需求
- 實現思路:
伺服器在重定向時帶上引數,引數的值就是當前頁面的路徑,因為可能當前路徑有引數,所以要對路徑進行URL編碼
/*PHP程式碼*/
if(登入失效){
//將路徑+?+引數進行URL編碼以後作為登入頁的引數url的值
header("Location: /login.php?url=".urlencode($_SERVER['PHP_SELF']."?".$_SERVER["QUERY_STRING"]) );
}
登入頁提取引數,然後URL解碼,登入驗證成功以後對應跳轉
/*JS程式碼*/
/**
* 獲取url中的引數值
*
* @param queryName 要獲取的引數名
* @returns {string|null} 返回對應的引數值 沒有找到返回null
* @constructor
*/
function GetQueryValue(queryName) { //這裡函式名的首字母G不能小寫,小寫就找不到方法,目前不知道為什麼,知道的歡迎指教
var query = decodeURI(window.location.search.substring(1));
var vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
if (pair[0] == queryName) {
return pair[1];
}
}
return null;
}
/*中間程式碼省略*/
if(登入驗證成功){
let url= GetQueryValue("url"); //連結裡的tourl引數
if (url != null) {
//引數有值,跳轉到原網頁
location.replace(decodeURIComponent(url));
} else {
//引數沒值,跳轉首頁
location.replace("admin/index.php");
}
}
相關文章
- js頁面跳轉的問題(跳轉到父頁面、最外層頁面、本頁面)JS
- 404頁面自動跳轉到首頁
- nginx 設定 404 500 頁面跳轉到指定頁面Nginx
- ADFS3.0/4.0 訪問登入頁跳轉到登出介面後再跳轉回登入頁的方法S3
- vue頁面跳轉Vue
- Flutter頁面跳轉Flutter
- react跳轉url,跳轉外鏈,新頁面開啟頁面React
- 2024-05-03 uni跳轉頁面a成功後會立即再跳轉到頁面b,導致無法展現頁面a ==》頁面a業務邏輯沒捋清楚
- 登入頁面
- Ant design pro使用(五):未登入時自動跳轉到登入頁,登入之後不再返回登入頁
- Flutter:如何跳轉頁面?Flutter
- JavaScript 頁面跳轉效果JavaScript
- router跳轉page頁面
- Flutter頁面保活及保持頁面跳轉位置Flutter
- APEX重定向頁跳轉1
- JavaScript頁面跳轉程式碼JavaScript
- vue-cli 跳轉到頁面指定位置Vue
- 短視訊直播原始碼,遊客模式下使用正常功能跳轉到登入頁面原始碼模式
- 簡單的網頁登入頁面網頁
- jQuery點選平滑跳轉到頁面指定位置jQuery
- Flutter頁面跳轉到IOS原生介面 如何實現?FlutteriOS
- 點選連結跳轉到應用指定頁面
- nginx 重定向到系統維護頁面Nginx
- 頁面跳轉的幾種方法
- PHP中實現頁面跳轉PHP
- php怎麼直接跳轉頁面PHP
- WebSecurityConfigurerAdapter 關於成功之後頁面跳轉的配置WebAPT
- 鴻蒙Navigation攔截器實現頁面跳轉登入鑑權方案鴻蒙Navigation
- javaWeb登入註冊頁面JavaWeb
- Vue學習:實現使用者沒有登陸時,訪問後自動跳轉登入頁面Vue
- 頁面內跳轉到相應位置的3種方法
- Android Jetpack - 使用 Navigation 管理頁面跳轉AndroidJetpackNavigation
- 日常問題 頁面跳轉 $_SESSION 失效Session
- php 跳轉頁面之前彈窗提示PHP
- JSP筆記-頁面重定向JS筆記
- PbootCMS登入後頁面載入緩慢怎麼辦boot
- Android應用中,跳轉到App的詳細設定頁面,設定許可權頁面AndroidAPP
- 微信小程式攜帶引數跳轉頁面/獲取頁面棧微信小程式