今天研究了如何在站点添加迅雷下载和快车下载。
1.迅雷下载
迅雷下载分为迅雷专用下载链接和迅雷离线下载。
这里几个名称解释下:
离线下载:其实就是迅雷帮你下。这种东西只适合冷门的资源。比如,你的正常下载速度能达到200KB/S,但是你下的资源是冷门资源,下载速度只能达到10KB/S,那么你就得下很久,如果你用离线下载,你就可以关掉迅雷或者机器,节约电费。过一段时间,离线下好了,你再从迅雷的服务器上以150KB/S(会员等级越高越快)的速度下到自己的电脑上。适用于当您下载的资源速度很慢的时候。
全部迅雷化:是把你网站上的所有资源下载链接都转换成迅雷专用链接。
部分迅雷化:是保留你的本地资源下载链接,在你的本地资源下载链接的旁边单独添加一个迅雷专用链接。
(1)专用下载的实现
Asp.net 版本
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
public string ThunderEncode(string code)
{
code = "AA" + code + "ZZ";
string encode = "";
byte[] bytes = Encoding.GetEncoding(54936).GetBytes(code);
try
{
encode = Convert.ToBase64String(bytes);
}
catch
{
encode = code;
}
return "thunder://" + encode;
}
</script>
<script src="http://pstatic.xunlei.com/js/webThunderDetect.js"></script>
<a href="#" thunderHref="<%=ThunderEncode("http://localhost:11990/source/aatext/download/GetContactPerson.rar")%>" thunderPid="57029" thunderType="" thunderResTitle="" onClick="return OnDownloadClick_Simple(this,2,4)" oncontextmenu="ThunderNetwork_SetHref(this)" >Asp.net版本迅雷专用高速下载</a>
其中thunderPid 为联盟号<br />
JavaScript 版本
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<script src="http://pstatic.xunlei.com/js/base64.js"></script>
<script language="javascript">
var thunder_url = "http://localhost:11990/source/aatext/download/GetContactPerson.rar";
var thunder_pid = "57029";
var restitle = "";
document.write('<a href="#" thunderHref="' + ThunderEncode(thunder_url) + '" thunderPid="' + thunder_pid + '" thunderResTitle="' + restitle + '" onClick="return OnDownloadClick_Simple(this,2,4)" oncontextmenu="ThunderNetwork_SetHref(this)">迅雷专用高速下载</a> ');
</script>
<br />
当然还有jsp,asp版本我没用到就不去管了,有需要的朋友可以看看注释的文章。
(1)离线下载的实现
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<%-- 这句是调用我们服务器上的js文件,主要作用是统计您网站上离线下载链接的展现量。--%>
<script src="http://pstatic.xunlei.com/js/base64.js"></script>
<script language="javascript">
var offlineUrl = http://localhost:11990/aatext/download/GetContactPerson.rar;
// var offlineUrl = "http://da.qqyk.net/soft/UploadQFile/2008/1/18/12005691021.torrent";
// 资源实际下载地址
var thunder_pid = "00390";
// “你的联盟号” 这里要填入你自己的联盟号(如:00390)。
document.write('<a href="http://lixian.vip.xunlei.com/lixian_login.html?referfrom=union&ucid='+thunder_pid+'&furl='+encodeURIComponent(ThunderEncode(offlineUrl)) +'" target=_blank>迅雷离线高速下载3(无需挂机)</a>');
//url 指定即可
</script>
2.快车下载
(1)JavaScript专用链代码
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<script src="Flashget_base64.js" type="text/javascript"></script>
<script>var fUrl= "http://localhost:11990/source/aatext/download/GetContactPerson.rar";
//此处为文件实际下载地址
//fg_uid 为注册的用户id
</script>
<a href="#" onClick='convertFgURL(0,87329)' oncontextmenu='Flashget_SetHref_js(this,87329);' >快车下载1</a>
<br />
(2)asp.net 版本
官网没有asp.net版本的,有asp版本,看了下源码 好像和迅雷的差不多。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
<script runat=server>
public string FlashgetEncode(string code,string fg_uid)
{
code = "[FLASHGET]" + code + "[FLASHGET]";
string encode = "";
byte[] bytes = Encoding.GetEncoding(54936).GetBytes(code);
try
{
encode = Convert.ToBase64String(bytes);
}
catch
{
encode = code;
}
return "Flashget://" + encode+'&'+fg_uid;
//在完整的asp文件中 后面还加入了时间的相关值 我这没加 它的代码如下
Function getTime()
getTime = DateDiff("s", "1970-01-01 08:00:00", Date()) * 1000 + Int(CDbl(Timer()) * 1000)
End Function
Function FlashgetEncode(t_url,uid)
Dim prefix,FlashgetURL,fg_uid,fg_time
fg_uid = uid
fg_time = Now()
prefix = "Flashget://"
FlashgetURL = prefix & fg_strAnsi2Unicode(fg_Base64encode(fg_strUnicode2Ansi("[FLASHGET]" & t_url & "[FLASHGET]"))) & "&" &uid
'&"&"& fg_uid & "&" & getTime()
FlashgetEncode= FlashgetURL
End Function
}
</script>
<script type="text/javascript">
function ConvertURL2FG(url,fUrl,uid)
{
try{
FlashgetDown(url,uid);
}catch(e){
location.href = fUrl;
}
}
function Flashget_SetHref(obj){obj.href = obj.fg;}
</script>
<a href="#" onClick="ConvertURL2FG('<%=FlashgetEncode("http://localhost:11990/source/aatext/download/GetContactPerson.rar","87329")%>','http://localhost:11990/source/aatext/download/GetContactPerson.rar',87329)" fg="<%=FlashgetEncode("http://localhost:11990/source/aatext/download/GetContactPerson.rar","87329")%>" oncontextmenu="Flashget_SetHref(this)" >下载资源名</a>
参考:1.迅雷联盟
2.迅雷各种版本源码
3.快车联盟
4.源码下载
5.一些站点实例