使用客户端IP作为cookie,识别重复访问并在首次访问后显示消息

时间:2015-09-24 06:21:17

标签: javascript php jquery cookies

首先,提前感谢任何解决/帮助解决此问题的人。抱歉,如果这是重复的(我无法在任何地方找到它,所以发布了一个新问题)。

所以主要的问题是我希望我的网页显示一条警告消息,随后从用户第二次访问该页面开始,所以我认为使用cookie进行IP记录将是最独特的事情,请建议如果有更好的用法。

浏览到现在,没有让我在cookie中记录IP的方法。此外,我发现的解决方案有点相似,但他们使用的是PHP,我不擅长。

我更喜欢使用JavaScript而不是jQuery,但是所有和任何帮助都表示赞赏。

1 个答案:

答案 0 :(得分:1)

首先我先给出不同方式识别重复访问并在第一次访问后显示消息。

我建议不要使用IP地址,因为共享一个IP地址的NAT路由器后面可能有多台机器,还会出现移动设备总是更改其IP地址的问题,因为它们也会连接到不同的网络

有多种方法可以做到这一点:

我建议使用选项3 选项4 ,以便用户计算机上不存储任何内容。然后客户端更安全,因为人们可以在他们的浏览器上存储JavaScript。

选项1:

您可以使用HTML5 Web存储创建客户端本地存储。

HTML5 Web Storage

  

在HTML5之前,应用程序数据必须存储在cookie中,包含在每个服务器请求中。本地存储更安全,可以在本地存储大量数据,而不会影响网站性能。

     

与Cookie不同,存储限制要大得多(至少5MB)   信息永远不会传输到服务器。

     

本地存储是按源(每个域和协议)。所有页面,来自   一个来源,可以存储和访问相同的数据。

选项2:

您可以使用客户端cookie,您可以使用JavaScript设置和删除它:

  

Cookie是计算机上存储在小文本文件中的数据。

     

当Web服务器将网页发送到浏览器时,连接是   关闭,服务器忘记了用户的一切。

     

发明饼干是为了解决“如何记住”的问题   有关用户的信息“:

     

当用户访问网页时,他的名字可以存储在cookie中。   下次用户访问该页面时,cookie会“记住”他的名字。   Cookie保存在名称 - 值对中,如:

     

username=John

我实际上已经在几天前做了一个例子。

COOKIE EXAMPLE

选项3:

您可以有一个会话,这是检查您是否有用户登录您的网站/应用程序的好方法:

PHP Sessions

  

会话是一种存储要在多个页面中使用的信息(在变量中)的方法。

     

与cookie不同,信息不会存储在用户计算机上。

     

使用应用程序时,打开它,进行一些更改,然后   然后你关闭它。这很像一个Session。电脑知道谁   你是。它知道您何时启动应用程序以及何时结束。但   在互联网上有一个问题:网络服务器不知道谁   你是或你做什么,因为HTTP地址不维护   状态。

     

会话变量通过存储用户信息来解决此问题   用于多个页面(例如用户名,喜欢的颜色等)。通过   默认情况下,会话变量会持续到用户关闭浏览器为止。

     

因此;会话变量包含有关单个用户的信息,并且是   可用于一个应用程序中的所有页面。

选项4:

您可以使用服务器端cookie(这种方式不会存储在用户计算机上),这是识别用户(访问者)的好方法:

PHP Cookies

  

Cookie通常用于识别用户。

     

Cookie通常用于标识用户。 Cookie是一个小文件   服务器嵌入用户的计算机上。每次都一样   计算机通过浏览器请求页面,它也会发送cookie。   使用PHP,您可以创建和检索cookie值。