读书人

csdn下载是如何隐藏链接的

发布时间: 2012-02-29 16:44:10 作者: rapoo

csdn下载是怎么隐藏链接的?

JScript code
 
<div class="xiazai">

<h5>



<img width="172" height="26" class="downnew" id="btndownload_dx" alt="" src="images/dianxin.gif"/>

<br/>

<img width="172" height="26" class="downnew" id="btndownload_wt" alt="" src="images/wangtong.gif"/>


<!-- <img id="btndownload" alt="" src="/images/pic_2.gif" /> -->



</h5>





<iframe name="iframe_data" style="display:none;"> </iframe>

<form name="downLoad_wt" id="downLoad" method="post" action="http://d.download.csdn.net/index.php/new/download/dodownload/2303821/hxhxd/93ea63ec8bc2ad0643e1ba58d38347ad" target="iframe_data">

<input name="ds" value="wt" type="hidden">

</form>

<form name="downLoad_dx" id="downLoad" method="post" action="http://d.download.csdn.net/index.php/new/download/dodownload/2303821/hxhxd/93ea63ec8bc2ad0643e1ba58d38347ad" target="iframe_data">

<input name="ds" value="dx" type="hidden">

</form>

<p>

<a href="http://vip.csdn.net/download.aspx?ID=2303821" onclick='LogClickCount(this,171);' target="_blank">《程序员》VIP会员免积分下载 </a>

<br/>

<dfn id="dfnscore"> </dfn>

<br/>

<a href="http://download.csdn.net/source/2303821#acomment" target="_blank">下载后评价,轻松获取积分 </a>

</p>

</div>
下面是需要的js代码:
<script type="text/javascript">

<!--

$(function() {


$("#btndownload_wt").css("cursor","pointer");

$("#btndownload_dx").css("cursor","pointer");


$("#btndownload_wt").click(function(){

if(2 >0)

{

if(!confirm('下载该资料将扣除2分,进行评分后会归还您的分数。\n\n重复下载不会重复扣分。是否继续?'))

return false;



}

document.downLoad_wt.submit();

});



$("#btndownload_dx").click(function(){

if(2 >0)

{

if(!confirm('下载该资料将扣除2分,进行评分后会归还您的分数。\n\n重复下载不会重复扣分。是否继续?'))

return false;



}

document.downLoad_dx.submit();



});






$.getJSON("http://download.csdn.net/index.php/rest/users/getcurruserinfo?jsoncallback=?",

function(data){

if(data.username!='')

{

$("#dfnscore").html("你目前积分:"+data.score);

if(data.score>=0 && data.score <=20)

{

//alert("你的积分不多了,记得要上传资源赢取积分哦!");

var btn=document.getElementById('close');

btn.className='popup';

$("#close").show();

}

if(data.score <0)

{

alert("您的积分已经是负数了,不能下载有分资源!");

}

}else

{

$("#dfnscore").html("下载请先 <a href=\"http://passport.csdn.net/UserLogin.aspx?from=http://d.download.csdn.net/down/2303821/hxhxd\" target=_blank>登录 </a>    <a href=\"http://passport.csdn.net/CSDNUserRegister.aspx\" target=_blank>免费注册 </a>");

}

});


});


function closes(btn,style)

{


var btn=document.getElementById(btn);

btn.className=style;


}

// -->

</script>


这是分析的代码

[解决办法]
通过后台的,也就是说并非是简单的通过js来控制显示和隐藏的。
具体的做法很多种。
[解决办法]
应该不是通过JS隐藏的,JS做不到真正的隐藏
[解决办法]
最烂的方法是:通过验证后在后台输出一段JS Response.write("<script>...</script>");
在这里加上那个链接

稍微好点的方法还有:
1、asp.net里面设置linkbutton的visible = false or true;
2、普通的通过ajax返回一段字符串,然后在前台执行加载。
===
[解决办法]
mark.学习一下
[解决办法]
通过访问ASP/PHP页面,ASP/PHP页面对用户登录信息进行验证,如需积分则扣除积分,执行完一系列操作后通过ASP/PHP脚本向客户端发送要下载的文件,这种做法对隐藏下载地址很有效,别人得到的只是ASP/PHP页面的地址,ASP/PHP中可以在服务器端做验证,防止盗链和非法下载。缺陷则是占用系统资源比较高
[解决办法]
像在CSDN下载的文件,用迅雷下载完后看任务属性,URL一样是
http://dlwt.csdn.net/fd.php?i=8638307&s=********************************
这样一个PHP页面的URL,根本得不到文件的实际路径,要下载必须通过这个PHP文件,这个PHP文件对用户的下载权限验证不通过就无法下载
[解决办法]
学习一下 ,呵呵

读书人网 >JavaScript

热点推荐