json前后台数据交互 java后端怎么实现
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了json前后台数据交互 java后端怎么实现相关的知识,希望对你有一定的参考价值。
参考技术A 假设后台传递到前台数据的临时对象为json(你上面那一长串)。 var json = “……”; json = eval('(' + json + ')'); json就对前台对象了,json.endPlncre可以拿出指定属性 385 参考技术B HttpServletRequest.getInputStream() 从request里面读inputstring后转成json,处理完后response.getWriter().print() 把json写到response里前后端交互数据加解密
参考技术A 本文提供了一种前后端交互数据的加解密方法,主要涉及了AES和RSA两种加密方式。AES加密是一种对称式加密,即加密和解密所需秘钥是相同的。后端生成一组秘钥,并利用该秘钥加密数据,然后发给前端,同时也需要把秘钥发送给前端,这样前端才能解密。这样就会有风险,一旦秘钥被泄露,你的加密将不存在任何意义。同时,相比RSA加密来说,好处是不会限制加密字符串的长度。
RSA加密,是一种非对称式加密,相比AES加密,这个就安全多了。后端生成一对秘钥,自己拿着私钥,公钥可以公开。这样前端拿公钥进行加密,后端拿私钥进行解密,私钥掌握在自己手里,被泄露的风险就小了很多。当然也有不好的地方,就是被加密字符串的长度不能过长,1024的秘钥只能加密117字节以内的明文,这就比较尴尬了,可能稍微长一点的数据就会超出了,当然可以通过2048或者4096的秘钥来延长加密长度,但总会被超出。所以适合需要加密长度不长的数据,最好是已知长度的数据,这样 就不会因长度问题报错。
RSA+AES混合加密,即后端通过RSA算法生成一对公私钥,并把公钥提供给前端。前端通过AES算法生成密钥,利用公钥进行加密并送给后端,后端根据私钥进行解密,得到与前端相同的AES密钥。然后,前后端就可以利用AES密钥对称加密进行数据交互。
详细步骤如图所示。
RSA+AES混合加密,结合了两种加密方式的优点。另外,前端每次启动都会随机生成AES密钥,后端增加token失效机制(前端设置了定时任务请求token),增加了前后端数据交互的安全性。
https://www.cnblogs.com/huanzi-qch/p/10913636.html
https://blog.csdn.net/weixin_38342534/article/details/94582656
以上是关于json前后台数据交互 java后端怎么实现的主要内容,如果未能解决你的问题,请参考以下文章
Servlet实现前后端json数据交互,前端js传输数据,后端fastjson解析json数据,以及Tomcat部署和jquery的部署