从同一IP地址的3个视图后重定向页面

时间:2014-04-24 22:32:01

标签: javascript html

我想知道如果用户在同一网页上出现3次,是否有可以重定向到其他网页的javascript或html代码?我有时会在有试用版的网站上看到这一点。

感谢您的回答。

3 个答案:

答案 0 :(得分:1)

正如 jods 所说,做客户端(JavaScript)是不安全的。简单的“清理”您的浏览器历史记录撤消诀窍..

但是这里有一个简单的例子,说明如何使用localStorage:

/*
    use this to reset the code:
    localStorage.setItem('visited', 0);
*/

var views = localStorage.getItem('visited');

views = (views===undefined)? 1 : parseInt(views)+1;

if (views<=3)
{
    localStorage.setItem('visited', views);
    document.write('You visited this page for the: ' + views + ' time!');
}
else
{
    document.write('You can only view it 3 times!');
}

答案 1 :(得分:0)

这在服务器端处理得更好。我不知道你使用什么技术(PHP,.NET,Java),但服务器可以轻松检查客户端的IP地址,并在3次后返回不同的答案,如重定向响应。

可以像使用cookies或localStorage建议的那样处理客户端,但如果您的目标是安全性(例如试用限制),那么效果非常差。 Cookies和localStorage很容易清除,用户可以自己获得3次免费访问。

答案 2 :(得分:0)

不能使用Javascript完成 ,你必须与服务器通信并以这种方式实现它。

如果您想将 IP地址替换为设备,则可以使用localStorage或Cookie。

以下是使用localStorage

的示例
var count = Number( localStorage.visitCount );

if(isNaN(count)) {
   localStorage.visitCount = 1
} else {
   localStorage.visitCount++
}

if( +localStorage.visitCount === 3 ) {
   window.location.replace('http://stackoverflow.com')
}