我在从具有基本 http 身份验证的 URL 播放电影时遇到问题。
这是代码:
NSURLCredential *credential = [[NSURLCredential alloc]
initWithUser:@"user"
password:@"password"
persistence:NSURLCredentialPersistenceForSession];
NSURLProtectionSpace *protectionSpace = [[NSURLProtectionSpace alloc]
initWithHost:@"moze.dyndns.org"
port:80
protocol:@"http"
realm:nil
authenticationMethod:NSURLAuthenticationMethodHTTPBasic];
[[NSURLCredentialStorage sharedCredentialStorage] setDefaultCredential:credential forProtectionSpace:protectionSpace];
NSURL *videoURL = [NSURL URLWithString:@"http://moze.dyndns.org/test/test.mov"];
moviePlayerController = [[MPMoviePlayerViewController alloc] initWithContentURL:videoURL];
[moviePlayerController.view setFrame:self.view.bounds];
[self.view addSubview:moviePlayerController.view];
MPMoviePlayerController *mp = [moviePlayerController moviePlayer];
mp.controlStyle = MPMovieControlStyleDefault;
[mp prepareToPlay];
[[moviePlayerController moviePlayer] play];
我收到错误“无法完成操作。(MediaPlayerErrorDomain 错误 -1013。)”,errorLog 为 NULL,就像 accessLog 一样。
我正在使用具有 AuthType Basic 的 apache 服务器,凭据是正确的,在 Web 浏览器上对其进行了测试。如果禁用身份验证,则播放没有问题。
请帮忙,我找不到问题所在。