凡是加密串中有“+”号的字符串,通过Request.QueryString都无法取到+号,这样导致程序解密出错。
请问该如何处理?

解决方案 »

  1.   

    通过Server.UrlEncode方法先把要传递的串变换一下,接收后再通过Server.UrlDecode方法变换回加密串。
    再按你自己的方法解密就行了。原因是你加密后的串通过URL传递时会变形。
      

  2.   

    传递时没有变形,加密后的字符串全是英文和数字,只是其中只要有+号就不行比如:sdf546+55=  这个传递的字符串,用request.querystring接收后+的位置就成了空白
      

  3.   

    因为
    +
    在URL编码中代表空格,所以你自己的字符串如果带有+的话应该采用楼上几位的所说方法
      

  4.   

    想了个别的办法 在接受页面把空格relpace成+号  补救一下
      

  5.   

    晕,我测试了一下发现,即使用server.urlencode转换了传递参数,但当使用request.querystring获取参数时,它会自动把它进行urldecode解码,这样,实际上前面的urlencode工作是白费了
      

  6.   

    搞定:
    其实是个小问题,没接触就不知道事实上,传递之前用urlencode转换就可,传递到了之后无需urldecode解码就可以了
      

  7.   

    什么是白费?
    所以Server.UrlEncode,其一pc里地很多东东不是我们老祖宗地,其二我们很多人都经过了实践的,看看文档吧,对中文你Server.UrlEncode和不用Server.UrlEncode测试一下,很快就发现问题了。