在客户端和服务器端设置跟踪cookie?

时间:2018-02-13 20:14:13

标签: javascript c# asp.net asp.net-mvc cookies

我们希望设置跟踪Cookie,以检查我们通过各种营销活动获得的用户数量。在我们网站的每个广告系列网址上,我们添加以下查询字符串参数: - utm_source,utm_medium和utm_campaign。

示例网址: - https://example.com/?utm_source=facebook&utm_medium=cpc&utm_campaign=jan

任何时候,我们都会从服务器上的任何网址获取请求,我们会检查:

  1. 如果url有utm_ *参数,我们会将其保存在Cookie中。
  2. 如果网址中没有这样的utm_ *参数,如果引用主机是我们的网站https://example.com/,我们会将其保存在Cookie中6个月。
  3. 如果网址和引用网站中没有此类utm_ *参数,则我们会将搜索引擎名称保存在Cookie中。
  4. 我们几乎没有类似的条件。

    我们应该在服务器端(C#)或客户端(javascript)写这个逻辑吗?

1 个答案:

答案 0 :(得分:1)

从技术上讲,你可以在两端做到这一点;但实际上,使用服务器端方法可能会稍微好一些,因为浏览器更难以解决(或者他们是否接受cookie)。像noscript和adblockers这样的东西可能会干扰客户端的实现。

此外,如果您在服务器端执行操作,则可以将该信息与浏览器的拇指指纹一起存储在数据库中,并与将来的访问进行比较。即使cookie被阻止/清除,这也会有效。