介绍Referer访问控制下的播放器Referer接口。
Referer访问控制介绍
基于 HTTP 协议支持的 Referer机制,通过 Referer跟踪来源,对来源进行识别和判断,用户可配置访问的 Referer 黑、白名单(二者互斥)来限制视频资源被访问的情况。
- 阿里云控制台支持黑名单和白名单两种模式,访客对资源发起请求后,请求到达CDN 节点,节点会根据用户预设的防盗链黑名单或白名单进行过滤,符合规则可顺利请求到视频数据;若不符合,请求会被拒绝,并返回403响应码。
- 配置后会自动添加泛域名支持,例如填写example.com,最终配置生效的是*.example.com,所有子级域名都会生效。
- 由于移动端一般拿不到Referer,当前默认支持空Referer访问,可选择关闭。
控制台配置页面如下图所示。
播放器Referer接口
阿里云播放器提供了Referer的设置。
比如:控制台设置的白名单为:aliyundoc.com 。 那么使用如下:
- Android
AliPlayer player = AliPlayerFactory.createAliPlayer(context); .... //获取播放器参数 PlayerConfig config = player.getConfig(); //设置referrer。注意:加上http(s)://的协议头 config.mReferrer = "http://aliyundoc.com"; //设置回播放器 player.setConfig(config);
那么这样才能播放视频。如果黑名单是aliyundoc.com,则如上设置不能播放视频。
- iOS
//获取播放器参数 AVPConfig* config = [self.player getConfig]; //设置referrer。注意:加上http(s)://的协议头 config.referer = @"http://aliyundoc.com"; //设置回播放器 [self.player setConfig:config]; [self.player setStsSource:self.stsSource]; [self.player prepare];