【发布时间】:2018-07-05 14:00:57
【问题描述】:
我有一个包含多个 C# ASP.NET Web 窗体项目的解决方案。我想要一种识别给定浏览器的方法,以便每个网站都可以识别同一个浏览器。我需要从 C# 代码隐藏代码(而不是客户端代码,如 JavaScript)中执行此操作。我也不能使用会话,因为它不是跨网站共享的。我认为 cookie 也不是。
例如,如果用户登录到 Website1,然后在同一台计算机上使用相同的浏览器登录到 Website2,我希望能够识别它。但是,如果用户使用 Chrome 登录 Website1,然后使用 FireFox 登录 Website1(无论它是否在同一台计算机上),我也想检测到这一点。
如果有什么不同,我将使用 Azure 发布我的 Web 项目。所以所有网站都会有相似的域(例如 website1.azurewebsites.net 和 website2.azurewebsites.net)。
【问题讨论】:
-
为什么要这样做? cookie 会起作用吗?
-
是的,cookie 会起作用。目的本质上是为了让我可以查看每个网站上是否是同一个人,以便拥有一些共享数据(共享设置、共享登录等)并跟踪给定用户跨网站的活动。
标签: c# asp.net session browser webforms