记录一个小问题,如果前端传递的参数是加密过的,需要在后台解密

Posted wangquanyi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记录一个小问题,如果前端传递的参数是加密过的,需要在后台解密相关的知识,希望对你有一定的参考价值。

如果前端传递的参数是加密过的,需要在后台解密,有中文等特殊符号需要用到加密:

前端代码:

 $.ajax(
        type: "POST",
        url: "/init/SaveToDatabase",
        dataType: "json",
        async: false,
        data: decodeURIComponent(JSON.stringify(array)),
        success: function (result) 
        var statusCode = result.StatusCode;
        console.log(statusCode);
        if (statusCode == 200) 
        layer.msg("成功:请求已经成功...");
         else if (statusCode == 500) 
        layer.msg("失败:请求失败,请重试...")
       
      
  );

后台代码:

 1 public JSONObject saveToDatabase(String jsonArray) throws UnsupportedEncodingException 
 2         //前台传的数据是加密的,后端解密
 3         jsonArray1 = URLDecoder.decode(jsonArray1, "utf-8");
 4         //踩过的坑,解密之后的数据最后一个字符多了一个=号,截取掉,endsWith判断最后一位是否是=号
 5         if (jsonArray.endsWith("=")) 
 6             jsonArray = jsonArray.substring(0, jsonArray.length() - 1);
 7         
 8         //转化成json数组
 9         JSONArray jsonArray = JSONArray.parseArray(jsonArray);
10 

补充一句,后台的加密写法:

name = URLEncoder.encode(name, "utf-8");

 

以上是关于记录一个小问题,如果前端传递的参数是加密过的,需要在后台解密的主要内容,如果未能解决你的问题,请参考以下文章

js前端数据加密插件

Urlencode问题

你好,我刚接触Python,要做一个RSA密码加密,是这样的

记录在JS的onclick事件中传入字符串类型的参数小问题

记录--9个封装Vue组件的小技巧

添加参数,如果执行存储过程后没有返回记录,则显示消息