我制作了一个.js
文件,我想保护它一点。只是从小型的leechers,显然更先进的人将能够弄明白。
我想添加到我的脚本中,检查文件正在哪个域上运行。如果它不是我的两个域(example1.com
,example2.com
),它将重定向到我的域。有点像iframe破坏者。
然后我可以采用整个代码并对其进行一些模糊处理。我的目的是阻止某人下载.js并在他们的服务器上使用它。
我的代码:
if(typeof(width)=='undefined')width=655;
if(typeof(height)=='undefined')height=540;
if(width<655)width=655;if(height<540)height=540;
if(width<height)height=width;
document.write('<ifr'+'ame src="/streams/hd/'+ ch+'.php" scrolling=no frameborder=0 width='+ width+' height='+ height+' scrolling=no allowtransparency=true id=thatframe ></ifr'+'ame>');
我可以添加一些内容,只允许脚本在我的网站上运行吗? example1.com
,example2.com
?
答案 0 :(得分:0)
使用返回主机名的document.location.host
,然后检查脚本,如
var _host = document.location.host;
if( _host == "example1.com" || _host == "example2.com" ){
// do things for example1.com
}
如果您想保护您的JS文件,请使用jscompress压缩版本。
答案 1 :(得分:0)
非常基本的解决方案,我知道有更好的方法来获取当前的URL。
if (document.URL.indexOf('http://example.com') == 0) {
// Then you're on example.com.
}
请注意,这也适用于子文件夹,例如: http://example.com/foo/bar
答案 2 :(得分:0)
您也可以像这样使用document.domain(MDN Reference for document.domain)
var allowedDomains = ['example1.com', 'example2.com'];
if (allowedDomains.indexOf(document.domain) == -1) {
// Code to redirect here
}