有一个问题老想一明白(关于session的),在客户端cookie禁用的情况下,服务器是如何判断某一个客户对应的是那一个session呢?

时间:2022-10-15 13:37:14


最近看一本web编程方面的书中提到,
客户第一次访问一个web页面时,服务器引擎同时将这个ID号发送到客户端,存放在cookie中。这样sesison对象和客户之间就建立起了一一对应的关系。

那么,按上面的廉洁,如果客户端禁用了cookie,那不是连session也不能用吗?感觉好象有点不对,请高手指教???????

我记得以前看书时是说到session是不存放在服务器端时,当时心里就有一个疑问。那就是服务器如何将session与特定客户联系起来呢?  我觉得上面那个web编程书中提到的做法是对的,但是如果这样的话,那岂不是session的使用会被客户端的cookie设置所影响了吗?????

9 个解决方案

#1


应该是每次浏览器请求都向服务器发送一个标识吧

同一个浏览器下打开本窗口新窗口都不会导致Session失效,可见Session是对客户端的一个标识。这个有服务器端决定,客户端根本用不着cookie

#2


session是存放在服务器端的,在客户端它在Httphandler中.客户端禁用了cookie不会影响它的使用.

#3


是的,因为Session是基于Cookies的,如果客户端禁止了Cookies的话Session确实不能使用,
但可以在Web.config中设置Cookieless=true;这样就会将SessionID保存到url中.

#4


Session的内容是保存在服务器端,但SessionID是保存在客户端Cookies或Url中的

#5


who is right???

1. session是存放在服务器端的,在客户端它在Httphandler中.客户端禁用了cookie不会影响它的使用.

2. 是的,因为Session是基于Cookies的,如果客户端禁止了Cookies的话Session确实不能使用,
但可以在Web.config中设置Cookieless=true;这样就会将SessionID保存到url中.


新的问题,httphandler是什么东东,谁能解释一下?

#6


在Web.config中设置Cookieless=true

当用户对启用了不依赖于会话的Web站点发出第一个请求时,那么请求的URL就自动地被改写成为包含该用户的会话id,此会话id将作为URL的一部分来传递

比如,如果用户请求http://www.mysite.com/mypage.aspx
那么该请求就自动改为http://www.mysite.com/(dljfajdo2u3u0jd092i1)/mypage.aspx
括号内为当前用户的会话id

#7


查了一下资料:
HttpHandler 主要是在服务器端,对aspx页面进行特定处理的,好象跟客户端没什么关系吧?

#8


to:amandag(高歌)
这只是在aspx中的处理方式,那如果在jsp或其它动态网页中呢? 如果客户端禁用了cookie那么到底还能不能用session呢? 哪果能用,它可以以什么别的机制来运行呢?

当然,你已经提到了在aspx中的处理机制!

#9


up

#1


应该是每次浏览器请求都向服务器发送一个标识吧

同一个浏览器下打开本窗口新窗口都不会导致Session失效,可见Session是对客户端的一个标识。这个有服务器端决定,客户端根本用不着cookie

#2


session是存放在服务器端的,在客户端它在Httphandler中.客户端禁用了cookie不会影响它的使用.

#3


是的,因为Session是基于Cookies的,如果客户端禁止了Cookies的话Session确实不能使用,
但可以在Web.config中设置Cookieless=true;这样就会将SessionID保存到url中.

#4


Session的内容是保存在服务器端,但SessionID是保存在客户端Cookies或Url中的

#5


who is right???

1. session是存放在服务器端的,在客户端它在Httphandler中.客户端禁用了cookie不会影响它的使用.

2. 是的,因为Session是基于Cookies的,如果客户端禁止了Cookies的话Session确实不能使用,
但可以在Web.config中设置Cookieless=true;这样就会将SessionID保存到url中.


新的问题,httphandler是什么东东,谁能解释一下?

#6


在Web.config中设置Cookieless=true

当用户对启用了不依赖于会话的Web站点发出第一个请求时,那么请求的URL就自动地被改写成为包含该用户的会话id,此会话id将作为URL的一部分来传递

比如,如果用户请求http://www.mysite.com/mypage.aspx
那么该请求就自动改为http://www.mysite.com/(dljfajdo2u3u0jd092i1)/mypage.aspx
括号内为当前用户的会话id

#7


查了一下资料:
HttpHandler 主要是在服务器端,对aspx页面进行特定处理的,好象跟客户端没什么关系吧?

#8


to:amandag(高歌)
这只是在aspx中的处理方式,那如果在jsp或其它动态网页中呢? 如果客户端禁用了cookie那么到底还能不能用session呢? 哪果能用,它可以以什么别的机制来运行呢?

当然,你已经提到了在aspx中的处理机制!

#9


up