用到的命名空间:System.Net;
比如浏览器 B1 去访问服务器端 S1,这会产生一个会话,而服务器端 S2 再用 WebRequest 去访问服务器端 S1,这又会产生一个会话。现在的需求是让 WebRequest
使用浏览器 B1 与 S1 之间的会话,让 S1 认为是 B1 在访问 S1,而不是 S2 在访问 S1。
这就要利用 Cookie 了,先在 S1 中取得与 B1 的 SessionID 的 Cookie,再将这个 Cookie
告诉 S2,S2 再将 Cookie 写在 WebRequest 中。
要说明的是:
这样做并不是 Cookie 欺骗,因为 SessionID 是 S1 告诉 S2 的,并不是 S2 窃取的,
虽然有些古怪,但这可能在一些特定的应用系统中会有用。S1 必须要向 B1 写 Session,
这样SessionID 才会保存到 Cookie 中,并且 SessionID 才会保持不变。
在 ASP.NET 中取 Cookie 用 Request.Cookies,本文假设 Cookie 已经取出来。不同的
服务器端语言,SessionID 在 Cookie 中上名称并不一样,这取决于 S1 端程序的设计。