如何防止网站路径上出现广告拦截器?

时间:2018-12-03 15:41:32

标签: reactjs http web endpoint adblock

在作为内容管理系统的React Web应用程序中,我有一个“广告商”屏幕,用户可以在其中处理“广告商”实体。

此屏幕与我自己的服务器(相同域)上的端点进行交互,该服务器上包含“ advertiser”一词,例如

List<string> allParams = new List<string>(); //here add fields you want to filter and their impact on rowview in string form if (tsPrzelewyTxtOpis.Text != ""){ allParams.Add("Opis like '%" + tsPrzelewyTxtOpis.Text + "%'"); } if(tsPrzelewyTxtPlatnik.Text != ""){ allParams.Add("Płacący like '%" + tsPrzelewyTxtPlatnik.Text + "%'"); } if(tsPrzelewyDropDownKonto.Text != "") { allParams.Add("Konto = '" + tsPrzelewyDropDownKonto.Text + "'"); } if (tsPrzelewyDropDownWaluta.Text != "") { allParams.Add("Waluta = '" + tsPrzelewyDropDownWaluta.Text + "'"); } if (tsPrzelewyDropDownStatus.Text != "") { allParams.Add("Status = '" + tsPrzelewyDropDownStatus.Text + "'"); } string finalFilter = string.Join(" and ", allParams); if (finalFilter != "") { (dgvPrzelewy.DataSource as DataTable).DefaultView.RowFilter = "(" + finalFilter + ")"; } else { (dgvPrzelewy.DataSource as DataTable).DefaultView.RowFilter = ""; } 要么 GET <domain>/advertiser/31

问题在于广告拦截者将我的路线识别为有害路线,并阻止了对这些路线的请求。

除了重命名端点之外,还有其他方法可以克服吗?

1 个答案:

答案 0 :(得分:1)

简短回答

对于内部应用程序,请让您的用户禁用网站域的广告拦截器浏览器插件。对于面向公众的网站,最实用的方法是将<domain>/advertiser/31重命名为<domain>/vendor/31之类。

按网址格式过滤广告拦截器

假设您的React Content Management System仅在公司内部网中使用,那么您应该对用户的环境有一定的控制权。明确包含在广告拦截软件中将您的域列入白名单的说明。

广告拦截器有几种过滤广告的机制,其中之一是URL模式匹配。以流行的广告过滤器列表EasyList为例。您可以看到诸如/advertises/*之类的模式。如果您的网址与这些模式中的任何一种匹配,它们将被阻止。