jquery對中文進行base64加密,后台用java進行base64解密


項目中遇到將中文從前台傳到后台過程中,出現亂碼,一番嘗試之后,均是亂碼,然后嘗試在js代碼中先進行base64加密,然后在Java中再進行解密,完美的解決了亂碼問題,步驟如下

一,html頁面引入jQuery.base64.js 下載地址如下:點擊打開鏈接

二,js代碼中添加如下代碼

//比如從頁面獲得用戶名如下(中英文均可)  
var userName = $("#userName").val();  
//然后進行base64加密  
var userNameBase64=encodeBase64(userName);   
//最后將加密后的userNameBase64傳到后台即可  
  
//加密方法。沒有過濾首尾空格,即沒有trim.    
//加密可以加密N次,對應解密N次就可以獲取明文    
 function encodeBase64(mingwen,times){    
    var code="";    
    var num=1;    
    if(typeof times=='undefined'||times==null||times==""){    
       num=1;    
    }else{    
       var vt=times+"";    
       num=parseInt(vt);    
    }    
    if(typeof mingwen=='undefined'||mingwen==null||mingwen==""){    
    }else{    
        $.base64.utf8encode = true;    
        code=mingwen;    
        for(var i=0;i<num;i++){    
           code=$.base64.btoa(code);    
        }    
    }    
    return code;    
};  

三,java控制層進行解密

 

首先引入base64的類:import org.apache.commons.codec.binary.Base64; 代碼如下

//進行解碼,userNameBase64是你獲得的加密后的用戶名,下面進行解密  
String userNameBase64="";  
byte[] userNameByte = Base64.decodeBase64(userNameBase64.getBytes("UTF-8"));    
String userName = new String(userNameByte));//獲得解密后的用戶名  

到此就完成整個前台進行base64加密,后台進行base64解密的整個過程.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM