图片防盗链
创建web窗体
新建TestHandler 继承IHttpHandler并实现接口
代码如下:
namespace _5._3
{
public class TestHandler : IHttpHandler
{
public bool IsReusable
{
get { return true; }
}
public void ProcessRequest(HttpContext context)
{
//获取上次请求的URL
Uri lastUrl = context.Request.UrlReferrer;
//获取本次的请求的URL
Uri currUrl = context.Request.Url;
//判断是否为盗链
if (lastUrl.Host !=currUrl.Host|| lastUrl.Port !=currUrl.Port)
{
//获取“请勿盗链” 警告提示图片路径
string errorlmagePath = context.Request.PhysicalApplicationPath + "Images/4.jpg";
//发送至客户端
context.Response.WriteFile(errorlmagePath);
}
else
{
context.Response.WriteFile(context.Request.PhysicalPath);
}
}
}
添加新建文件夹,右键选择现有项,添加图片
如图所示:
添加完成后,在web.config里添加如下代码:
<system.webServer>
<handlers>
<add verb="*" path="Images/*.jpg" type="_5._3.TestHandler" name="plink" />
</handlers>
</system.webServer>
然后右键项目添加web窗体
编写如下代码:
<body>
<form id="form1" runat="server">
<div>
<img class="one" src="Images/1.jpg" />
<img class="two" src="Images/2.jpg" />
<img class="three" src="Images/3.jpg" />
</div>
</form>
</body>
右键解决方案添加新的web项目并新建web窗体
编写代码如下:
<body>
<form id="form1" runat="server">
<div>
<p>以下图片来自于第一网站</p>
<img class="one" src="https://localhost:44302/Images/1.jpg" />
<img class="two" src="https://localhost:44302/Images/2.jpg" />
<img class="three" src="https://localhost:44302/Images/Images/3.jpg" />
</div>
</form>
</body>