Flash作品的播放保护
如果实现swf文件不能在本地或者非法url中播放,就可以达到一定程度的保护效果。下面来讲一下实现的大致思路,
代码如下:
var this_url = _root._url;
if (substring(this_url,1,4) == 'file'){
//如果在硬盘上播放,作出处理
trace('对不起,禁止在本地播放!');
}else{
//表示在网页中播放,则检查是否是合法的URL地址
urlArray = this_url.split("/"); //对url地址分割
if (urlArray[2]!='yourweb.com'){
getURL("javascript:alert('访问被禁止!')");
}else {
getURL("javascript:alert('欢迎光临YourName!')");
}
}
注意:该段代码必须写在开头,具体的处理控制还需要细化才行。
因为客户端的安全性不并是很好,所以建议在服务器端作保护控制,下面的方法采用了服务器端的实现:
//访问保护
application.onAppStart = function (info){
this.domainList = new Array("http://210.64.45.41";,"http://210.64.45.38";,"http://vid
eo.idv.to";);
this.domainLength = this.domainList.length;
};
application.onConnect = function(client_obj) {
//限制访问
trace("user trying to connect from:" + client_obj.referrer);
var theReferrer = client_obj.referrer.toLowerCase();
for(i=0; i<this.domainLength; i++) {
var challenge = theReferrer.indexOf(this.domainList[ i ]);
if (challenge == 0) {
acceptit = 1;
break;
}
}
if (acceptit) {
trace ("correct domain, accepting connection");
application.acceptConnection(client_obj)
} else {
trace ("Sorry wrong domain, rejecting connection");
application.rejectConnection(client_obj)
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构