Asp中如何设计跨越域的Cookie(2)

时间:2008-10-24 09:46:00 



最后,我们回到siteA.com。文件的第一部分(l-l)检查是否完成了cookie的检查,由于可以明显地知道已经完成(由语句中的"checked"参数表明),进行到l—3所示的程序的第二部分。如果存在特殊的标志,我们就可以在siteA.com创建cookie。使用这个特殊的标志(在这里是username),我们可以在任何需要的时候查询数据库。然后,设置cookie,显示页面的其他部分。如果没有指定的标志,也没必要担心,只要简单地显示页面的余下部分。

这样,毫不费力地,siteA.com拥有了和siteB.com一样的cookie。我们可以传输更多的信息而不只是一个标志,并且,将网络流量控制在最小范围内。

要注意一点,即使用户拥有siteA.com上的cookie,仍需要检查siteB.com。通常来讲,这不是必须的,也会节约时间。但是,一旦用户在siteB.com更改个人信息?这样做,会保持所有信息的同步。

Cookie环

要完成这些,我们需要两个文件:一个在原始站点服务器(siteA.com),完成检查;一个在参考服务器(siteB.com),验证用户。如果有一台参考服务器包含有需要的所有用户信息或cookie,就可以增加随意多的原始服务器,所需要做的就是在所有要共享cookie的服务器上增加cookie.inc文件。

也可以以相反的次序执行,例如,如果siteB.com是原始服务器,而siteA.com包含用户信息。访问过siteA.com却从未访问过siteB.com的用户也可以登录到siteA.com,并且拥有所有的曾经的设置。注意,如果拥有多个参考服务器,这样将会很使人迷惑,并且消耗过多的资源,因为必须将用户重定向到每一台参考服务器。

理论上讲,可以拥有一个所有站点都共享相同的用户的网络。最可行的方案就是建立共享cookie环。将参考服务器列表存储在一个地方(备份服务器),以便每个参考服务器可以查找并决定重定向用户的下一个站点。记住一定要通过查询字符串的意思跟踪用户是在哪个原始服务器开始。这样信息的传输非常迅速,这个环节变得越来越可行。

这里还存在一些问题,首先是反应时间。对用户而言,他们最好不知道过程是怎样的。他所需的时间依赖于siteA.com、siteB.com之间的连接,有可能会比较长,在实现cookie环时可能会更长。

再一个主要问题,就是每一个实现者大都会面对无限的重定向。这有很多原因,例如:用户的测览器不支持cookie。这就需要再设计代码来监测用户浏览器的性能。

最好,还需要注意安全问题。如果有些黑客发现了其中的诀窍,他可能会得到cookie中的信息。最简单的防范办法就是保护参考服务器,只允许原始服务器访问Cookie.asp文件。 

标签:
0
投稿

猜你喜欢

  • Python使用Pygame绘制时钟

    2022-08-04 14:10:07
  • session的存储方式和配置方法介绍

    2022-04-28 05:48:59
  • Python使用LRU缓存策略进行缓存的方法步骤

    2023-09-03 05:00:06
  • python 多线程应用介绍

    2023-07-13 08:04:04
  • 基于微信小程序实现透明背景人像分割功能

    2024-06-05 09:34:50
  • 跟老齐学Python之有容乃大的list(4)

    2023-03-13 21:53:17
  • MHTML在ie7/vista bug 解决方案

    2010-02-01 12:42:00
  • Vue.js使用axios动态获取response里的data数据操作

    2024-05-08 09:34:06
  • python,pycharm的环境变量设置方式

    2023-08-04 10:44:41
  • php删除二维数组中的重复值方法

    2024-06-05 09:51:20
  • web标准知识——美化段落文本 Ⅱ

    2008-07-22 12:12:00
  • 在ASP中使用SQL语句之3:LIKE、NOT LIKE和 BETWEEN

    2007-08-11 12:30:00
  • Python三种遍历文件目录的方法实例代码

    2023-06-26 05:24:50
  • 手把手带你了解Python数据分析--matplotlib

    2022-05-21 22:07:18
  • python 实现return返回多个值

    2022-10-12 17:23:37
  • ASP项目中的asp分页 翻页模块函数

    2010-04-03 21:03:00
  • 交互设计实用指南系列(8)—深广度平衡

    2010-02-01 12:59:00
  • Access报错:文件共享锁定数溢出

    2009-03-21 18:32:00
  • fullcalendar日程管理插件月份切换回调处理方案

    2024-05-09 15:25:55
  • JavaScript 基础问答 四

    2024-04-18 10:52:09
  • asp之家 网络编程 m.aspxhome.com