项目中准备让客户端把所有的参数都加密,然后post到服务器,现在服务器需要将参数解密并提取相应的参数,类似于tomcat的getParameter,本来想借鉴Tomcat,找了半天源代码没摸着头绪,自己写的话怕出现问题,马上就要上线了,没多少时间测试= =!哪位XDJM有好的实现麻烦分享下吧。

解决方案 »

  1.   

    1. 是WEB项目吗?
    2. 是HTTP协议吗?
    3. 难道是自定义的Servlet容器吗?
    4. 实现了J2EE的标准难道没有实现request.getParameter()吗???
      

  2.   

    是web项目,是http协议,参数也是asdf=223&wer=wer&wer=wer这种,但是这个是加密的,解密之后就不能用web容器里的API了
      

  3.   

    asdf=223&wer=wer&wer=wer
    這裡所有參數列表整體加密,賦給一個key就可以了么
      

  4.   

    我没有明白。
    asdf=223&wer=wer&wer=wer 这些东西你解密之后,你的程序中已经有解密后的信息。你可以直接使用的呀。
    假如你要传给下一个链接,直接"?"传过去,这又是一个新的请求,到下一个对应的Servlet中直接使用key获取就行了。如果不是一个新的请求,你为什么要死扣着要通过Servlet API来获取呢???
      

  5.   

    asdf=223&wer=wer&wer=wer我就是想拿到asdf   wer 这些参数的值……,正则不太熟,故发帖求助
      

  6.   

    request.getParameter得到参数值,然后根据加密算法进行解密就行了啊……不明白LZ的疑问在哪里……
      

  7.   

    客户端将所有的参数:aa=aa&bb=bb&cc=cc 封装为 query=加密(aa=aa&bb=bb&cc=cc)服务器端接收到query后解密,得到的是一串字符串aa=aa&bb=bb&cc=cc, 然后我要取得这aa是什么bb是什么。
      

  8.   

    你这个需求貌似和提交一个url参数一样...
      

  9.   

    把提交的内容组装为一个字符串“asdf=223&wer=wer&wer=wer” 然后加密(MD5或者SHA1),把加密的数据交给一个key组装成 data="加密数据",然后提交,服务器端通过request.getParameter("data") 取出数据,然后根据字符“=”和“&”进行拆解提取
      

  10.   

    晕了加解密以后,截取一下不就行了。。客户端过来的asdf=223&wer=wer&wer=wer串是你自己定义的规则,然后服务器解密后根据这个规则截取一下不就完了。。1. 截取三个参数段str.split("\\&");
    2. 截取参数key和value, 如第一个参数的key,那么str.split("\\&")[0].split("\\=")[0]截取多个采用循环就行了。。
      

  11.   

    特殊参数的话,,你就将asdf=223&wer=wer&wer=wer,中的&和=改一下,改成一个特殊字符的组合,将很大程度减少以后出现特殊字符串的概率然后在截取的时候转义用 特殊字符组合 截取。。任何一种截取方式都会带来这种问题【除非客户端不允许传递 截取时用到的特殊字符分割组合】。。尽量减少概率吧。。