我們有aws中的s3存儲桶,其中有視頻。我們需要使用AWS iOS sdk傳輸這些視頻。串流s3私人視頻
到目前爲止,我能找到的唯一的選擇是使用URL流(公共視頻)
但對於S3 GetObject的請求 - 我可以下載視頻,然後查看它,但有沒有辦法下載在大塊視圖呢?
我們有aws中的s3存儲桶,其中有視頻。我們需要使用AWS iOS sdk傳輸這些視頻。串流s3私人視頻
到目前爲止,我能找到的唯一的選擇是使用URL流(公共視頻)
但對於S3 GetObject的請求 - 我可以下載視頻,然後查看它,但有沒有辦法下載在大塊視圖呢?
找到一種方法來做到這一點,您生成安全網址來訪問AWSIOSSDK
S3GetPreSignedURLRequest * request = [[S3GetPreSignedURLRequest alloc] init];
request.key = fileName;
request.bucket = self.bucket;
[request setExpires:[NSDate dateWithTimeIntervalSinceNow:3600]];
這僅適用於1+不是2
getObject默認爲非阻塞下載調用。所以基本上這個框架被設計爲在下載完成後處理回調,以便爲您提供輸出流中的數據並將其提供給客戶端流供查看。
軟件開發工具包支持非阻塞式下載,所以理想情況下您也可以在客戶端以塊的形式下載。
我幫助維持AWS SDK適用於iOS。
SDK支持獲取請求的範圍,因此您可以在離散操作中下載數據塊。
S3GetObjectRequest *getObjectRequest = [[S3GetObjectRequest alloc] initWithKey:FILE withBucket:BUCKET];
[getObjectRequest setRangeStart:START rangeEnd:END];
[s3 getObject:getObjectRequest];
SDK還包含可能被使用,因爲它被以流方式下載到處理數據的委託協議。
我知道這是舊的,但無論如何。我可以看到對象被創建,你從哪裏得到的URL? – Esko918
你能澄清一下什麼對象嗎? –
我想通了。在創建presignedurl請求之後,我必須使用''[[[AWSS3PreSignedURLBuilder defaultS3PreSignedURLBuilder] getPreSignedURL:request]''。該塊返回一個AWTask,它是已生成的URL。我仍然沒有完成它,但我認爲多數民衆贊成的方式去 – Esko918