亚洲一级电影在线观看,九九精品无码专区免费,亚洲AV无码资源在线观看 ,欧美国产高清

asp.net中利用ashx實現圖片防盜鏈代碼

時間:2024-07-19 05:49:57 ASP 我要投稿
  • 相關推薦

asp.net中利用ashx實現圖片防盜鏈代碼

  直接分析盜鏈原理:看下面用httpwatch截獲的http發送的數據

  GET /Img.ashx?img=svn_work.gif HTTP/1.1

  Accept: */*

  Referer: /

  Accept-Language: zh-cn

  UA-CPU: x86

  Accept-Encoding: gzip, deflate

  User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA)

  Host:

  Connection: Keep-Alive

  該數據包表示請求/Img.ashx?img=svn_work.gif文件。我們可以看到Referer表示上一頁請求頁面地址,也就是文件來源。Host表示當前請求的主機地址。

  下面是一個盜鏈的數據包

  GET /Img.ashx?img=svn_work.gif HTTP/1.1

  Accept: */*

  Referer: http://745.cc/

  Accept-Language: zh-cn

  UA-CPU: x86

  Accept-Encoding: gzip, deflate

  User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; CIBA)

  Host:

  Connection: Keep-Alive

  我們可以看到,上面兩個數據,表示對于同一個文件:/Img.ashx?img=svn_work.gif的請求過程,這里的不同就是Referer,也就是都是請求同一個文件,但是請求的來源是不同的。因此我們可以在程序里判斷是否是來源于當前服務器,來判斷是否是盜鏈。明白原理以后,實現防盜鏈就非常簡單了。下面以圖片防盜鏈來實現一個演示。ASP.NET中添加一個img.ashx文件,然后后臺代碼如下:

  復制代碼 代碼如下:

  using System;

  using System.Collections;

  using System.Data;

  using System.Web;

  using System.Web.Services;

  using System.Web.Services.Protocols;

  namespace GetImage

  {

  ///

  /// $codebehindclassname$ 的摘要說明

  ///

  [WebService(Namespace = "http://tempuri.org/")]

  [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

  public class Img : IHttpHandler

  {

  public void ProcessRequest(HttpContext context)

  {

  context.Response.ContentType = "image/jpg";

  if (context.Request.UrlReferrer != null && context.Request.UrlReferrer.Host.Equals(context.Request.Url.Host, StringComparison.InvariantCultureIgnoreCase))

  context.Response.WriteFile(context.Server.MapPath("~/" + context.Request.QueryString["img"]));

  else

  context.Response.WriteFile(context.Server.MapPath("~/logo.gif"));

  }

  public bool IsReusable

  {

  get

  {

  return false;

  }

  }

  }

  }

  表示如果來源不為空,并且來源的服務器和當前服務器一致,那就表示是正常訪問,非盜鏈。正常訪問文件內容。

  否則就是盜鏈,返回網站LOGO。

  你甚至可以做成隨機返回正確的圖片,隨機返回錯誤圖片,或者定時返回正確圖片,定時返回錯誤圖片。

  然后就是圖片的使用了,這時使用圖片就不是直接了,而是,就是說通過img,ashx來讀取圖片。別人盜鏈的話要用代碼。

【asp.net中利用ashx實現圖片防盜鏈代碼】相關文章:

防盜鏈接ASP函數實現代碼01-23

關于ASP.NET使用JavaScript顯示信息提示窗口實現原理及代碼05-09

JavaScript實現網頁刷新代碼段08-07

將php實現過濾UBB代碼09-11

ASP.NET連SQL7接口的源代碼06-06

Java中的動態代碼編程06-27

在Java中執行JavaScript代碼07-14

常用排序算法之JavaScript實現代碼段06-04

關jQuery彈出窗口簡單實現代碼-javascript編程06-07

cad中怎么導入圖片09-14

主站蜘蛛池模板: 久久久久无码国产精品不卡 | 亚洲中文字幕成人无码| 免费大片黄在线观看| 亚洲国产五月综合网| 亚洲精品国产aⅴ成拍色拍| 亚洲精品美女网站| 久久久久国产精品麻豆ar影院 | 国产成人a在线观看视频| 乱人妻人伦中文字幕| 锡林郭勒盟| 国产乱子伦精品视频| 少妇做爰免费视频网站| 激情综合五月丁香亚洲| 色妞www精品视频二| 精品无码国产污污污免费| 国产精品视频免费网站| 国内揄拍国内精品| 无码精品a∨动漫在线观看| 亚洲日本欧美日韩高观看| 人在线看天堂无码| 在线色综合| 无码熟妇人妻av在线网站| 亚洲精品国偷拍自产在线观看蜜臀 | 熟妇高潮喷沈阳45熟妇高潮喷 | 成人网站免费在线观看| 中文字幕熟妇人妻在线视频| 亚洲s码欧洲m码国产av| 国产在线自揄拍揄视频网站| 国产三级精品三级在线专区1| 伊人久久大线影院首页| 日本无码人妻丰满熟妇区 | 新香蕉少妇视频网站| 国产精品一区二区久久不卡| 国产超碰无码最新上传| 人人妻人人添人人爽欧美一区| 国产亚洲欧洲aⅴ综合一区| 亚洲国产人成自精在线尤物 | 彰化县| 人妻人人看人妻人人添| 久久这里只有热精品18| 97人妻人人揉人人躁人人|