2013-08-26 58 views
4

我想從需要OAuth2身份驗證的來源流式傳輸音頻文件,這是我的代碼,但它不起作用。來自經過驗證的URL的iOS流音頻

NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url]; 

     [req setValue:[NSString stringWithFormat:@"Bearer %@", accessToken] forHTTPHeaderField:@"Authorization"]; 

     player = [AVPlayer playerWithURL:req.URL]; 
     [player play]; 

你能幫忙嗎?

+0

你嘗試這樣嗎? [req addValue:[NSString stringWithFormat:@「Bearer%@」,accessToken] forHTTPHeaderField:@「Authorization」]; – karthika

+0

現在嘗試它,不工作 – vburojevic

+0

@Wikiboo是你能解決有關從谷歌驅動器流媒體音頻ur問題。 – NextStep

回答

2

問題是您將身份驗證令牌添加爲HTTP標頭,但只使用URL發出請求(並且標頭未包含在URL中)。

我需要在我的應用程序中做類似的事情,但看起來好像不可能干擾AVPlayer的網絡請求(至少不是公共API)。所以現在我正在使用NSURLSession來自己請求文件(這意味着不需要流式傳輸 - 需要等待整個文件,或者執行一些複雜的處理,將其交給大型音頻播放器),否則,請將網絡服務接受我的參數作爲查詢參數而不是HTTP標頭。

這個問題也有一些潛在的變通辦法:Send headers with AVPlayer request in iOS