怎样实现像csdn的多站点的登录和注销功能?
解决方案 »
- a,b,c都为int, a+b>c看起来很简单,但实际上是有错误的,应为a+b有可能溢出,请高手指点
- 我试不出来,帮我吧
- |M| 大家给网站中出现的错误的时候是保存到哪里的 怎样个保存法
- >>>>>高手请进,如果通过反向代理进行下载<<<<<
- 关于aspx网页的布局问题,急!
- 关于asp.net程序运行问题
- 求一权限管理的解决方案!200分(不够再加)!!
- CommandArgument='<%# "&UserID=" + DataBinder.Eval(Container.DataItem,"UserID") %>'什么意思
- 请问XtraTreeList,可以在aspx 中用吗,如能要怎么用?谢谢
- 怎样取得datagrid中的dropdownlist中的值?
- B页如何获取A页的的变量???
- 如何动态显示标题栏(急!!!)
1. 打开A网站进行登录;
2. 检测Login服务器是否可用;
3. 如果Login服务器可用,检测发现Login服务器Session未创建;
4. 重定向到A网站的页面,接受Login服务器传来的Key和UID组成的类序列化后的数据;
5. 得到的Key是1,说明Login服务器Session未创建,在A网站创建Session,登录完成后使用 <script> 访问Login服务器上的页面创建Session并记录网站名和网站登出页面地址;
6. 打开B网站登录,发现没有登录,检测Login服务器是否可用;
7. 如果Login服务器可用,检测发现Login服务器Session已经创建并记录网站名和网站登出页面地址;
8. 重定向到B网站的页面,接受Login服务器传来的Key和UID组成的类序列化后的数据;
9. 得到的Key不是1,说明Login服务器Session已经创建,根据Key到数据库进行验证,验证通过后在B网站创建Session。
登出
1. 每个网站都有登出按钮,点击按钮后先清空本地Session;
2. 然后检测Login服务器是否可用;
3. 可用的话跳转到Login服务器的登出页面;
4. 根据Session中存储的已登录网站名和登出页面地址,生成 <img> 指向各个网站的登出页面;
5. 登出成功后登出页面显示图片(返回图片流),如果登出失败(页面不能访问)则显示本地登出失败图片。 特点
1. Login服务器就算Down了各个网站也能分别登录和登出;
2. 巧妙使用临时GUID来做验证令牌;
3. 巧妙使用script和img的src来访问登录登出页面创建和撤销Session。