首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

怎么实现一个客户端多用户登录呀

2012-09-16 
如何实现一个客户端多用户登录呀?也就是说n个人用一台电脑登陆一个web管理系统,怎么保存登陆者信息呢。放se

如何实现一个客户端多用户登录呀?
也就是说n个人用一台电脑登陆一个web管理系统,怎么保存登陆者信息呢。

放session里不行,发现前边的登陆者刷新后总是取的最后一个人的登录信息。

大家可以测试下这个代码。

C# code
public partial class Test_Default : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {        if (!this.IsPostBack)        {                  this.Session["LoginUser"] = DateTime.Now;              }           }    //读取session    //显示登录人的时间,其实不然,显示的却是最后一个用户登录的时间。    //请打开多个浏览器器测试下。    protected void Button2_Click(object sender, EventArgs e)    {        this.Response.Write(this.Session["LoginUser"].ToString());    }}


————————————————————————————————
我放cookie里也是碰见类似的问题。

即使cookie的键值不同也会导致这样的问题,

因为客户端取时无法判断键值,因此也会出问题。

具体代码太长就不贴出来了。

——————————————————————————————

请教下,有哪位高人做过类似的一个客户端多用户登录的功能呀

[解决办法]
帮顶
[解决办法]
基于.NET的模拟多用户客户端的设计与实现http://www.soft6.com/tech/3/36776.html
[解决办法]
基于 cookie 会话管理的需要浏览器支持不同浏览器进程使用不同的cookie

目前,应该只有 IE 8 有这个特性,其他包括 Chrome FF Opera 都是多个浏览器进程共享 cookie 的,

IE8中用 File > New Session 打开的 IE 窗口 与 直接打开 IE 或者 File > New Window 或者 New tab 出来的不共享 cookie,后两者是共享cookie的
[解决办法]
能直接实现你的需求,并支持多个浏览器,是:
不用 cookie 存储会话信息(注意 asp.net session 默认用 cookie 的),而用 cookieless,将会话信息附加到 url ,但 url 有长度限制,不能存太多信息

另一个方法是,要求用户使用多种浏览器
比如用户 A 用IE,用户B用Chrome 用户C用 FF
[解决办法]

ding

热点排行