jquery base64 加密解密 request 文本字段传输

项目中需要将包含特殊字符的文本字段通过JSON加密传输。方案一采用Java进行Base64加密,视图端使用jQuery.base64.js解密;方案二使用CryptoJS进行解密,需引入core-min.js和base64.js。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近项目中涉及文本类型的字段通过json 传递,文本字段里面可能包含了很多特殊字符,这样在传输的过程中必须要加密。方案详细如下:
方案1: 服务端通过 Java提供的 base64位加密 ,view 端通过jquery.base64.js 解密
Java 加密 代码如下:

 public static String encodeBase64Str(String plainText){
        String encodeBase64Str=null;
        if (org.apache.commons.lang.StringUtils.isNotEmpty(plainText)){
             byte[] btyeArrayStr=plainText.getBytes();  
             Base64 base64=new Base64();  
             btyeArrayStr=base64.encode(btyeArrayStr);  
             try {
                encodeBase64Str =new String(btyeArrayStr,"UTF-8");
            } catch (Exception e) {
                log.error("ERROR IN  HotBuyServiceImpl ===> encodeBase64Str method ",e);
            } 
        }
        return encodeBase64Str;  
     }  

view 解析代码如下:
页面解析建议用 div,然后 display:none .因为 input hidden 字段长度有限

var msgDesc=$("#divId").html().replace(/(\s*)/g, "");  注意替换一下特殊字符
$.base64.decode(msgDesc, 'utf8') 一定要注意引用 utf8务端加密方式一致。

方案2:view 端通过CryptoJS 解密 需要引入:core-min.js , base64.js 稍后会上传js。
view 解析代码如下:

var msgDesc=$("#divId").html().replace(/(\s*)/g, "");  注意替换一下特殊字符
var msgDescVar = CryptoJS.enc.Base64.parse(msgDesc);
msgDescVar .toString(CryptoJS.enc.Utf8);

function base64_encode() {
        var str = CryptoJS.enc.Utf8.parse(jQuery("#content").val());
        var base64 = CryptoJS.enc.Base64.stringify(str);
        $("#result").val(base64);
}
function base64_decode() {
    var words = CryptoJS.enc.Base64.parse(divValue);
    $("#DivId").val(words.toString(CryptoJS.enc.Utf8));
}

js 详细见 :http://download.youkuaiyun.com/detail/tangpengtao/9100879

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值