语境:
一个字符串,当用户访问的时候会带到 URL 的参数中: http://xxxx?param=anystring
现在想要的就是当用户访问其他页面的时候,这个 param 参数也能保留下来,等到做某次操作使用。 浏览器关闭这个参数不需要保留
问题:
我是直接在服务端接收到这个参数,然后放到 session 中了。同事说不行,理由如下: 这个东西本身就是客户端功能,不需要保存到服务器再返回回去。直接存到 cookie 中
关于这个问题到底怎么做才会比较好?
语境:
一个字符串,当用户访问的时候会带到 URL 的参数中: http://xxxx?param=anystring
现在想要的就是当用户访问其他页面的时候,这个 param 参数也能保留下来,等到做某次操作使用。 浏览器关闭这个参数不需要保留
问题:
我是直接在服务端接收到这个参数,然后放到 session 中了。同事说不行,理由如下: 这个东西本身就是客户端功能,不需要保存到服务器再返回回去。直接存到 cookie 中
关于这个问题到底怎么做才会比较好?
|
zhouxuchenNov 11, 2016
1
试试用 sessionStorage
|
|
pubbyNov 11, 2016 via Android
2
cookie
session 的话要看具体实现,如果用缓存实现的,可能在生命周期内被提前清除 |
|
shoalyNov 11, 2016
3
判断的标准是 这个 anystring 但不担心用户更改
如果不担心 可以储存到 cookie, 比如 登录框中 上次一次的用户名, 因为反正都会做登录验证的判断 有一些敏感的不能存, 通过 ?param=isvip, 用户当前是否允许操作 VIP 的功能, 这种需要放到 session |
|
66betaNov 11, 2016
4
纯前端自己用的参数,存 cookie
sessionStorage 只在当前 tab 有效 |
|
sutraNov 11, 2016
5
放 session 里会增加服务器负载均衡时的复杂度。
|
|
LichMscyNov 11, 2016
6
可以试试 localStorage ,关闭浏览器的时候 clear 掉
|
|
lighteningNov 11, 2016
7
你用的是什么语言啊? Rails 里默认的 Session 就是用 Cookie 实现的。
|
|
billleeNov 11, 2016
8
不担心用户自己篡改的用 cookie, 否则用 session.
|
|
kkzxak47Nov 11, 2016 via Android
9
你同事没错。
session 一般都是用 cookie 来实现的吧,你这个参数就是客户端记住的,传到服务器再传回来是在做无用功。 |
|
10
服务器识别出客户端谁是谁,就是要客户端提供一个凭证,用这个凭证来找对应 session ,不论凭证具体实现是 cookie 还是 local storage 还是客户指纹等等。
你说的这个参数和这个 session 凭据一样,一直是客户端负责存储,既然不需要用它从服务器取数据,传回服务器就没有意义。 |
|
11
多谢各位解惑,我回去修改下代码。
|