博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webform的图片防盗链
阅读量:5260 次
发布时间:2019-06-14

本文共 1140 字,大约阅读时间需要 3 分钟。

最近用到域的问题,不是同一主机的请求将不允许请求此页面。

这其实和图片防盗链的本质是一样的。

通过两个属性:由于当时用的aspx视图引擎,所以需要通过HttpContext.Current才能拿到httpcontext对象。

通过Httpcontext.Current.Request.UrlReferrer属性,指的是:是谁来请求。

HttpContext.Current.Request.Url属性,指的是:谁被请求。

如果这两个URI的主机名和端口号一直,则表示来自同一主机。

//获取有关客户端上次请求的URL信息,该请求链接到当前的URL            //表示是谁去请求            string urlReferrer = HttpContext.Current.Request.UrlReferrer.Host.ToString();            //获取有关当前请求的URL            //表示请求谁            string url = HttpContext.Current.Request.Url.Host.ToString();            Uri.Compare(HttpContext.Current.Request.UrlReferrer, HttpContext.Current.Request.Url, UriComponents.HostAndPort, UriFormat.SafeUnescaped, StringComparison.CurrentCultureIgnoreCase);

  

 

关于图片防盗链实现的方案:

在项目中,图片的src不要直接写,可以通过一个方法去请求,在后台接受这个请求,

在做一样的判断,如果主机一样则返回正确的图片地址,如果不是则做相应的处理。

下面是官网的信息:

Return Value

Type: 

An  value that indicates the lexical relationship between the compared  components.

Value

Meaning

Less than zero

uri1 is less than uri2.

Zero

uri1 equals uri2.

Greater than zero

uri1 is greater than uri2.

 

追加:

Uri.Compare的返回值为int类型,

0:表示两个相等。

大于0:表示前者大于后者。

小于0:表示前者小于后者。

 

转载于:https://www.cnblogs.com/xiaoai123/p/7246795.html

你可能感兴趣的文章
UVa 11059 最大乘积
查看>>
UVa 12545 比特变换器
查看>>
数组分割问题求两个子数组的和差值的小
查看>>
10个著名的思想实验1
查看>>
composer 报 zlib_decode(): data error
查看>>
linux下WPS的使用
查看>>
java 中 finally里面写了return 会发生什么?
查看>>
Web Api 利用 cors 实现跨域
查看>>
hdu 3938 并查集
查看>>
谈谈hashcode和equals的用法
查看>>
instanceof
查看>>
BZOJ 题目1036: [ZJOI2008]树的统计Count(Link Cut Tree,改动点权求两个最大值和最大值)...
查看>>
《深入分析Java Web技术内幕》读书笔记之JVM内存管理
查看>>
python之GIL release (I/O open(file) socket time.sleep)
查看>>
网络穿透
查看>>
2015/8/4 告别飞思卡尔,抛下包袱上路
查看>>
软件开发与模型
查看>>
Codeforces Round #306 (Div. 2) A
查看>>
161017、SQL必备知识点
查看>>
hdu 1541Stars
查看>>