Vue使用JSEncrypt實現(xiàn)rsa加密及掛載方法
掛載全局方法
使用jsencrypt進行rsa加密
原文鏈接:Js參數(shù)RSA加密傳輸,jsencrypt.js的使用 *
http://www.dbjr.com.cn/article/179813.htm
(原文處有一個地方不對,不需要轉(zhuǎn)換+,rsa已經(jīng)做過base64轉(zhuǎn)碼了)
1.安裝依賴 npm install jsencrypt 2.在main.js引入 import { JSEncrypt } from 'jsencrypt' 3.掛載全局方法 //JSEncrypt加密方法 Vue.prototype.$encryptedData = function(publicKey, data) { //new一個對象 let encrypt = new JSEncrypt() //設置公鑰 encrypt.setPublicKey(publicKey) //password是要加密的數(shù)據(jù),此處不用注意+號,因為rsa自己本身已經(jīng)base64轉(zhuǎn)碼了,不存在+,全部是二進制數(shù)據(jù) let result = encrypt.encrypt(password) return result } //JSEncrypt解密方法 Vue.prototype.$decryptData = function(privateKey, data) { // 新建JSEncrypt對象 let decrypt = new JSEncrypt() // 設置私鑰 decrypt.setPrivateKey(privateKey) // 解密數(shù)據(jù) let result = decrypt.decrypt(secretWord) return result }
全局混合
使用yarn安裝至Vue項目
yarn add jsencrypt --dep
或者使用npm
npm install jsencrypt --dep
混入
import { JSEncrypt } from 'jsencrypt' export const RsaMixin = { methods: { // 加密 encryptedData(publicKey, data) { // 新建JSEncrypt對象 let encryptor = new JSEncrypt(); // 設置公鑰 encryptor.setPublicKey(publicKey); // 加密數(shù)據(jù) return encryptor.encrypt(data); }, // 解密 decryptData(privateKey,data){ // 新建JSEncrypt對象 let decrypt= new JSEncrypt(); // 設置私鑰 decrypt.setPrivateKey(privateKey); // 解密數(shù)據(jù) decrypt.decrypt(secretWord); } } }
引入
<script> import InvoiceRecordModal from './modules/InvoiceRecordModal' import { RsaMixin } from '@/mixins/RsaMixin' export default { name: "InvoiceRecordList", //此時可以直接調(diào)用混入的方法 mixins:[RsaMixin], data(){}, computed:{} } </script>
封裝為單VUE文件中的方法
使用yarn安裝至Vue項目
yarn add jsencrypt --dep
或者使用npm
npm install jsencrypt --dep
引入jsencrypt
import { JSEncrypt } from 'jsencrypt'
方法
methods: { // 加密 encryptedData(publicKey, data) { // 新建JSEncrypt對象 let encryptor = new JSEncrypt(); // 設置公鑰 encryptor.setPublicKey(publicKey); // 加密數(shù)據(jù) return encryptor.encrypt(data); }, // 解密 decryptData(privateKey,data){ // 新建JSEncrypt對象 let decrypt= new JSEncrypt(); // 設置私鑰 decrypt.setPrivateKey(privateKey); // 解密數(shù)據(jù) decrypt.decrypt(secretWord); } }
總結(jié)
以上所述是小編給大家介紹的Vue使用JSEncrypt實現(xiàn)rsa加密及掛載方法,希望對大家有所幫助!
相關文章
antd的select下拉框因為數(shù)據(jù)量太大造成卡頓的解決方式
這篇文章主要介紹了antd的select下拉框因為數(shù)據(jù)量太大造成卡頓的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10vue項目發(fā)布有緩存正式環(huán)境不更新的解決方案
vue項目每次發(fā)布新版本后,測試人員都要強制刷新才能更新瀏覽器代碼來驗證bug,下面這篇文章主要給大家介紹了關于vue項目發(fā)布有緩存正式環(huán)境不更新的解決方案,需要的朋友可以參考下2024-03-03vue+webpack dev本地調(diào)試全局樣式引用失效的解決方案
今天小編就為大家分享一篇vue+webpack dev本地調(diào)試全局樣式引用失效的解決方案,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11Vue項目三級聯(lián)動路由跳轉(zhuǎn)與傳參的思路詳解
這篇文章主要介紹了Vue項目三級聯(lián)動的路由跳轉(zhuǎn)與傳參的思路詳解,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧2024-08-08Vue利用AJAX請求獲取XML文件數(shù)據(jù)的操作方法
在現(xiàn)代Web開發(fā)中,從前端框架到后端API的交互是必不可少的一部分,Vue.js作為一個輕量級且功能強大的前端框架,支持多種方式與服務器通信,從而獲取或發(fā)送數(shù)據(jù),本文將詳細介紹如何在Vue.js項目中使用AJAX請求來獲取XML格式的數(shù)據(jù),需要的朋友可以參考下2024-09-09使用vue實現(xiàn)點擊按鈕滑出面板的實現(xiàn)代碼
這篇文章主要介紹了使用vue實現(xiàn)點擊按鈕滑出面板的實現(xiàn)代碼,非常不錯,具有參考借鑒價值,需要的朋友參考下2017-01-01