objective-c - iOS 网络视频播放url referer的问题
本文介绍了objective-c - iOS 网络视频播放url referer的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
今天尝试做视频播放,遇到的一个问题。
我们网站的视频的不能直接拿来URL播放,需要给Request加上Referer才可以请求到资源。
- (void)viewDidLoad {
//referer
NSString *referer = @"https://scontent.cdninstagram.com/hphotos-xpa1/t50.2886-16/11200303_1440130956287424_1714699187_n";
//视频url
NSURL *videoURL = [NSURL URLWithString:@"http://test.3dker.cn/api/files/get/file/by/576a4b22cc673f1c008f444e.mp4"];
//传给视频url给播放库进行播放
[self playVideoWithURL:request.URL];
}
- (void)playVideoWithURL:(NSURL *)url
{
if (!self.videoController) {
CGFloat width = [UIScreen mainScreen].bounds.size.width;
self.videoController = [[KRVideoPlayerController alloc] initWithFrame:CGRectMake(0, 0, width, width*(9.0/16.0))];
__weak typeof(self)weakSelf = self;
[self.videoController setDimissCompleteBlock:^{
weakSelf.videoController = nil;
}];
[self.videoController showInWindow];
}
//此库就直接调用系统MPMoviePlayerController Api了,里面又不可以修改
self.videoController.contentURL = url;
}
//若不加referer资源就请求不到,但是Api又并没有生成Request,请问,有没有办法解决这种问题?
解决方案
也许可以自定义 NSURLProtocol
来实现为每一个特定的 NSURLRequest
添加 Header,如果你那个库底层是用到 NSURLRequest
的话
这篇关于objective-c - iOS 网络视频播放url referer的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文