2

Ich habe eine Videodatei in AVPlayer von Server zu spielen, aber ich habe auch die Standardauthentifizierung zu verwenden, um dies file.here ist mein Code zu spielenWie benutze ich die Standardauthentifizierung mit AVPlayer, um Videodateien vom Server abzuspielen?

NSMutableDictionary * headers = [NSMutableDictionary dictionary]; 
NSData *basicAuthCredentials = [[NSString stringWithFormat:@"username:password"] dataUsingEncoding:NSUTF8StringEncoding]; 
NSString *base64AuthCredentials = [basicAuthCredentials base64EncodedStringWithOptions:(NSDataBase64EncodingOptions)0]; 
[headers setValue:[NSString stringWithFormat:@"Basic %@", base64AuthCredentials] forKey:@"Authorization"]; 
NSURL *videoURL = [NSURL URLWithString:fileUrlString]; 
AVURLAsset * asset = [AVURLAsset URLAssetWithURL:videoURL options:headers]; 
AVPlayerItem * item = [AVPlayerItem playerItemWithAsset:asset]; 


AVPlayer *player = [AVPlayer playerWithPlayerItem:item]; 
AVPlayerViewController *playerViewController = [AVPlayerViewController new]; 
playerViewController.player = player; 
playerViewController.delegate = (id)self; 
[player play]; 
[self presentViewController:playerViewController animated:YES completion:nil]; 
+0

Und was passiert? – Droppy

+0

AVPlayerViewController wird erfolgreich präsentiert, aber die Datei wird nicht wiedergegeben. –

+0

Und empfängt der Server die Anfrage? Haben Sie untersucht, welche Fehlerberichte für Sie verfügbar sind? – Droppy

Antwort

1

@ ankit-jain Sie sind fast da. Der richtige Weg HTTP-Header an den AVURLAsset hinzuzufügen sieht wie folgt aus:

AVURLAsset * asset = [AVURLAsset URLAssetWithURL:videoURL options:@{@"AVURLAssetHTTPHeaderFieldsKey" : headers}];

Wenn Sie es tun, auf diese Weise, Ihre Header zusammen mit der Anforderung verwendet. Werfen Sie einen Blick auf diese Antwort für weitere Details: https://stackoverflow.com/a/23713028/1306884

+0

Warum sollte jemand diese Antwort ablehnen, ohne einen Kommentar zu hinterlassen, während er die richtige Lösung für das Problem bietet? – Michael

Verwandte Themen