guojianwei770

初级会员

贴子 19

精华 0

积分 10

信用 0

竞猜 0

魅力 0

威望 0

现金 157 CZB

银行 0 CZB

黄金 0

比特币 0

注册时间 2019-02-25

发表于:2019-03-01 11:03:45   |  只看该作者   |  本帖随机奖励楼主:0 CZB   |  转账至  guojianwei770

预下载与预渲染问题

各位大佬,请想,如何判断一个url对应的资源(图片之类的)是预下载流量或预渲染流量啊?(就是用户还没有看这部分信息,但是已经下载或渲染完了,等用户看的时候就直接展示就好了,不用再下载或渲染了,提升了速度)
预下载或预渲染是有什么参数定义的吗,还是什么方式?
能在http请求头之类的看出来这个url对应的流量是预下载流量或预渲染流量吗?还是什么方式能看出来?
十分感谢!
楼主
编辑   |    引用    回帖
关闭    高亮    置顶   |    移动    回收站   |    -6删主题    删主题    |   
金狐

狐狸

管理员

贴子 137288

精华 13

积分 77006

信用 11

竞猜 20

魅力 23333

威望 8

现金 69303348 CZB

银行 53061887 CZB

黄金 8888

比特币 888

注册时间 2003-08-18

发表于:2019-03-01 15:03:17   |  只看该作者   |  转账至  金狐
你说一下你需要用到这样功能的场景。
对于页面来说,其实没什么预下载,预预渲,浏览器都是分析页面代码,然后向服务器读取相关图片、文件等等。所谓的预下载预渲染,要么用ajax方式异步读取异步刷新,要么就是页面在前部先显示一个信息,在尾部再用相关内容替换掉预显示的信息。所有的技术手段是让浏览者的体验好点而已。
所以具体那个url是预下载、预渲染,只要你分析下页面代码以及抓一下url获取顺序,大概就知道了。
时间、时间、时间
沙发
编辑   |    引用    回帖
关闭    高亮    置顶   |    移动    回收站   |    -6删帖    删帖    |   
guojianwei770

初级会员

贴子 19

精华 0

积分 10

信用 0

竞猜 0

魅力 0

威望 0

现金 157 CZB

银行 0 CZB

黄金 0

比特币 0

注册时间 2019-02-25

发表于:2019-03-01 16:03:58   |  只看该作者   |  转账至  guojianwei770

回复 沙发 的帖子

举个例子吧,假如有一个广告A,它会被多个媒体投放,假设媒体有抖音,百度。
       用户使用抖音的时候,抖音将广告A预下载,预渲染,这样形成了流量,但是用户并没有看到广告A,或者点击广告A。但是这样做的话,即使用户没看到A,因为预先下载或渲染了,就会被记录一条广告A的流量,这条流量是不正常的。
       而用户使用百度的时候,百度没有预下载等步骤,这个流量就是正常的。
       所以想知道有没有什么方式可以将预下载,预渲染的流量给区分出来。比如,使用预下载或者预渲染的时候,HTTP请求响应头会不会有什么参数是特殊的之类的。或者有什么手段可以做到。
       谢谢!
板凳
编辑   |    引用    回帖
关闭    高亮    置顶   |    移动    回收站   |    -6删帖    删帖    |   
金狐

狐狸

管理员

贴子 137288

精华 13

积分 77006

信用 11

竞猜 20

魅力 23333

威望 8

现金 69303348 CZB

银行 53061887 CZB

黄金 8888

比特币 888

注册时间 2003-08-18

发表于:2019-03-01 16:03:05   |  只看该作者   |  转账至  金狐
你是想知道你的网页(广告)是否有效显示是吧?
首先明确的说,你是没有办法区分是否预下载,浏览器读取url的时候并没有特别的标志。

通常对于放广告的程序,检查广告是否有效,并不是通过检测url来检测是否有效的。分几个方面说吧:
1.先说一下你举例子的百度和抖音。百度是面向全网络投放的资源,不但是百度网站本身,还在其他很多不同的网站(例如我们)都会投放。而且百度的流量很大是基于web页面的,所以百度的显示端一般是各大浏览器,那么就会像我沙发时说的,不存在预读取的情况,因为各大浏览器是通用的、标准的,只能根据网页代码来读取显示网页。而对于抖音,它是一个APP,也就是说,它什么时候读取网络资源,读取什么资源,什么时候显示,都是抖音本身可以定制的,它不是标准的浏览器。所以会出现你说的情况,它可以预先读取资源,然后再考虑是否显示。
2.还有别的方式也可能使得你的资源读取了,但没有显示。例如浏览器的拦截广告插件,有的插件它是在浏览器读取网页的时候,分析该网页,然后对于它认为是AD的内容,修改它的属性,让他不显示。但对于浏览器来说,它虽然不显示,但仍然是会下载的。也会产生你说的,读取了资源,但不显示。也可能修改AD内容的位置,例如让显示内容的DIV移动到一个不可能出现的正常浏览器显示窗口的地方(x=1000000,y=1000000),这样,用户也会看不见广告内容。
3.更恶劣的是一些专门刷广告的软件,软件本身就是一个定制的浏览器,它会读取广告,并且模拟IP、模拟正常显示,模拟用户点击等等,用户刷广告,它们不但不显示,并且会大量的刷无效的广告。

所以,如果你想知道你那些广告资源是有效到达用户的,通常是用一个分离的JS或FLASH对广告进行检测,有点像网站统计系统的原理。例如,检测广告的位置是否异常,广告上面是否有正常的浏览过程,例如在广告的前面放置一些特殊变量,检测这个变量是否有效,等等等等。。。并且手段不是唯一的,要经常变化,以免被破解,被规避。

说白了,其实这是一种检测与被检测的技术对抗,不能简单地用检测HTTP头就能解决,也不能用简单的方法解决这个问题。
时间、时间、时间
4楼
编辑   |    引用    回帖
关闭    高亮    置顶   |    移动    回收站   |    -6删帖    删帖    |   
guojianwei770

初级会员

贴子 19

精华 0

积分 10

信用 0

竞猜 0

魅力 0

威望 0

现金 157 CZB

银行 0 CZB

黄金 0

比特币 0

注册时间 2019-02-25

发表于:2019-03-01 21:03:36   |  只看该作者   |  转账至  guojianwei770

回复 4楼 的帖子

嗯嗯,非常感谢您的回答,对我非常有帮助!非常赞!
5楼
编辑   |    引用    回帖
关闭    高亮    置顶   |    移动    回收站   |    -6删帖    删帖    |   
IceCool

贵宾

贴子 86715

精华 5

积分 44263

信用 0

竞猜 0

魅力 1313

威望 3

现金 502369 CZB

银行 0 CZB

黄金 0

比特币 0

注册时间 2003-08-19

发表于:2019-03-18 13:03:43   |  只看该作者   |  转账至  IceCool
狐狸真是深不可测啊
6楼
编辑   |    引用    回帖
关闭    高亮    置顶   |    移动    回收站   |    -6删帖    删帖    |