簡體   English   中英

從 Swift 上傳視頻到 Amazon S3

[英]Upload video to Amazon S3 from Swift

我想使用 Swift 在 Amazon S3 上上傳視頻,但找不到任何在線幫助。 有人能幫我嗎?

謝謝!

https://docs.aws.amazon.com/en_us/aws-mobile/latest/developerguide/mobile-hub-add-aws-mobile-user-data-storage.html

1)創建一個Podfile:

platform :ios, '8.0'
inhibit_all_warnings!
use_frameworks!

target 'AmazonS3Upload' do
pod 'AWSS3'
end 
  1. 從終端運行下一個命令:

    吊艙安裝

  2. 打開生成的工作區。 之后,我們可以使用 Pods 中的框架來實現文件上傳。

  3. 我們需要導入2個模塊:

導入 AWSS3

導入 AWSCore

  1. 使用您的憑證設置 AWS 配置。 例如:

    讓 accessKey = "..." let secretKey = "..."

    讓憑證提供者 = AWSStaticCredentialsProvider(accessKey: accessKey, secretKey: secretKey)

    讓配置 = AWSServiceConfiguration(區域:AWSRegionType.usEast1,憑證提供者:憑證提供者)

    AWSServiceManager.default().defaultServiceConfiguration = 配置

  2. 創建上傳請求:

    let url = ...URL 到您的文件... let remoteName = "上傳文件的名稱" let S3BucketName = "您在 Amazon S3 上的存儲桶名稱"

    讓 uploadRequest = AWSS3TransferManagerUploadRequest()! uploadRequest.body = url uploadRequest.key = remoteName uploadRequest.bucket = S3BucketName uploadRequest.contentType = "image/jpeg" uploadRequest.acl = .publicRead

  3. 並使用 AWSS3TransferManager 上傳。

    let transferManager = AWSS3TransferManager.default() transferManager?.upload(uploadRequest).continue({ (task: AWSTask) -> Any? in if let error = task.error { print("Upload failed with error: ((error.localizedDescription) ))") }

    if let exception = task.exception { print("上傳失敗,出現異常 ((exception))") }

    if task.result != nil { let url = AWSS3.default().configuration.endpoint.url let publicURL = url?.appendingPathComponent(uploadRequest.bucket!).appendingPathComponent(uploadRequest.key!)

     print("Uploaded to:\\(publicURL)")

    }

    返回零})

您還可以按照https://aws-amplify.github.io/docs/ios/storage使用 Amplify CLI 來配置 S3,並使用 Amplify 框架的 Storage 插件與 S3 交互。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM