问:我正在尝试将内容过滤器(禁止字过滤器)添加到Web代理中。当Javascript检测到页面上任何禁止的单词时,它应该:
*在屏幕上回显/打印/向用户显示警告:
“在页面上发现了禁语单词“等等”。您将被重定向到Google”。
*然后,重定向到Google。
要完成所有这些操作,代码将是什么?
我想编写代码以查看示例。
我正在尝试在php中构建一个,但是php专家说最好是在客户端进行禁词检查。否则,如果检查是在服务器端完成的,则该页面将花费很长时间加载(CPU使用率很高)。我没有编写Javascript代码的经验。
答:为什么您认为此代码不起作用?我只看到一个空白页。
每次cURL加载页面时,都需要运行该代码,以便JS可以检查该页面中是否有禁止的单词。
[代码]
<?php
/ *
错误处理
* /
$ curl = curl_init();
curl_setopt($ curl,CURLOPT_URL,'https://www.buzzfeed.com/mjs538/the-68-words-you-cant-say-on-tv?utm_term=.xlN0R1Go89#.pbdl8dYm3X');
curl_setopt($ curl,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ curl,CURLOPT_RETURNTRANSFER,true);
$ result = curl_exec($ curl);
如果(curl_errno($ curl)){
回声'错误:'。curl_error($ curl);
}
$ response = curl_getinfo($ curl);
if($ response ['http_code'] =='200')
{
?>
<脚本>
$(function(){
var pageData =“你好<a>示例可以有标签!脏话是</a> <div>一个.. </ div>“;
if(checkSwear(pageData)== false){
//重定向到google
}
});
函数checkSwear(sentance){
var swear_words_arr = new Array(“ blow”,“ nut”,“ asshole”);
var regex = new RegExp('\\ b('+ swear_words_arr.join('|')+')\\ b','i');
if(regex.test(sentance)){
alert(“请不要使用令人反感的词语”); / * + alert_text * /
返回false;
} else {
// alert(1)
返回true;
}
}
</ script>
<?php
}
curl_close($ curl);
?>