有時候我們需要在地址欄傳輸一些信息,比如查詢數據的時候,傳一個參數location.href = "/admin/extract?name="+"參數aaa"’但是我們直接這樣傳輸會有一些問題,我們通常會進行加密,下面介紹一個很簡單的加密方式,先把文檔地址放上crypto-js
我們首先在頁面中引入js,<script type="text/javascript" src="/js/tools/crypto-js/crypto-js.js"></script>
比如,我們需要加密的參數為“參數aaa”我們就可以這樣寫:
var _adminNmae= CryptoJS.AES.encrypt(‘參數aaa’, configs.key),
location.href = "/admin/extract?name="+_adminNmae
1
2
當我們在下一個頁面打開的時候是這樣的:
這里寫圖片描述
這時候我們就需要解密了:
首先,我們應該截取到地址欄的數據,先寫一個公用的方法:
var getQueryString = function(getUrl,name) {
var url = getUrl.substring(getUrl.indexOf("?"));
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = url.substring(1).match(reg);
if (r != null) return decodeURIComponent(r[2]);
return "";
};
我們用這個函數去獲取值,然后第二步進行解密
1
2
3
4
5
6
7
8
var name=name = CryptoJS.AES.decrypt(getQueryString(window.location.href,"name"), configs.key).toString(CryptoJS.enc.Utf8);
1
這時候我們就能拿到參數值了。
————————————————
版權聲明:本文為CSDN博主「su_xiao_0707」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qazwsx3322/article/details/70208597
