比如点击提交,成功后转到一个页面地址比如是:http://localhost/test.aspx?id=123怎么能让用户输入 http://localhost/test.aspx?id=1234,而不对其处理,就是避免通过随便写个id获取他人信息,怎么做了?谢谢。

解决方案 »

  1.   

    通过MD5或DES加密算法对传递参数先进行加密,接收的时候再进行解密
      

  2.   


    说具体点,我也想用Dictionary来做,但是,都是在!ispostback里面对id进行处理,你怎么标示了,即使用户恶意修改了id,也还是!ispostback里面对id进行处理。
      

  3.   

    加密:Response.Redirect("WXorJC_Detail.aspx?shipname=" + Convert.ToBase64String(System.Text.Encoding.Default.GetBytes(e.CommandArgument.ToString())).Replace("+", "%2B"));
    解密:shipname = System.Text.Encoding.Default.GetString(Convert.FromBase64String(Request.QueryString["shipname"].ToString().Replace("%2B", "+")));
      

  4.   

    http://localhost/test.aspx?id=123 那比如说这个,你就是不是指向让123看123的?那么你这个系统有没有登陆,如果没有登陆,那么就没有办法记录状态,也就没有办法去禁止用户通过修改URL的方法查看其它用户的信息
      

  5.   

    字符串加密的方法。
    URL重写。
      

  6.   

    to 7 floor登录了,还有就是各位,我不要加密。
      

  7.   

    根据URL 传来的参数,对其进行判断,Page.User.Identity.Name获取当前用户的名称,两个比较是不是同一个人是就显示不是就不显示
      

  8.   

    在if (!this.IsPostBack)之前对Request.QueryString判断
      

  9.   

    以前做过的是到那新的页面后首先核对session和ID