项目中修改信息时,首先要根据Id load出信息,因为id敏感,想要隐藏id


这个问题最常见了,没想到今天难住了我!
以用户信息为例
一般项目中,都有修改用户信息的功能,修改用户的第一步是 根据id值load出用户详细信息, 现在我从用户列表页面点击链接已可以根据Id load出详细信息,但因为Id内容太敏感了,不想让id值出现在网页地址栏。我也尝试了使用模拟form表单提交,这样可以提交过去,可以正常显示,网页地址栏也不会出现id,但当我刷新页面时,问题就出来了,id值已经不存在了,刷新页面等于是不带id值去请求了,页面就出错了。
大家有什么巧妙的办法吗?

http 隐藏参数 传参

忘却的海洋 9 years, 5 months ago

这个时候是不是不应该用 ID 而直接用 用户名 ,难道你这个用户名不是唯一的吗?参照一下这些:

网易的修改个人信息和密码的 url 是这样的 https://reg.163.com/chg/ChangeInfo_0.jsp?username=username

微博是这样 http://weibo.com/user-name/home?wvr=xx ;

微博在修改密码的时候 url 中是没有任何帐号相关的信息。猜测可能是通过 session 类似的机制处理的。

另外,在自己修改自己的信息时,并不一定需要显示的传递帐号信息,因为这个时候该帐号是在线的,服务器上有这个帐号的的会话信息。只有在管理员管理用户的时候才会出现显示传递帐号的问题,这种没有很好的办法,不过可以通过简单的混淆加密做些处理而已。

以上

lljtsj answered 9 years, 5 months ago

Your Answer