• 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解密的整个过程.

  • 相关阅读:
    iOS开发之Quartz2D 二:绘制直线,曲线,圆弧,矩形,椭圆,圆
    统计英文文章中各单词的频率,打印频率最高的十个单词(C语言实现)
    Android protectionLevel
    nmon for linux
    UFT 小技巧
    adb测试使用相关
    Java 反射
    Android USB安全调试
    android.process.acore和system进程
    Android 屏幕截图
  • 原文地址:https://www.cnblogs.com/mjbrian/p/6812654.html
Copyright © 2020-2023  润新知