Я пытаюсь отправить запрос PUT по приведенной ниже ссылке для загрузки данных в хранилище AWS:
"https://jpcloud01.s3.amazonaws.com/134/111067134/872/1d38b212-9753-4d02-b87e-fa7f90d95990.mp4?AWSAccessKeyId=XXXXXXXXXXXXXXX&Expires=1570334549&Signature=YYYYYYYYYYYYYY"
Но на консоли всегда отображается сообщение:
NSLocalizedDescription=The request timed out., NSErrorFailingURLStringKey=https://jpcloud01.s3.amazonaws.com/134/111067134/872/1d38b212-9753-4d02-b87e-fa7f90d95990.mp4?AWSAccessKeyId=XXXXXXXXXXXXXXX&Signature=YYYYYYYYYYYYYY, NSErrorFailingURLKey=https://jpcloud01.s3.amazonaws.com/134/111067134/872/1d38b212-9753-4d02-b87e-fa7f90d95990.mp4?AWSAccessKeyId=XXXXXXXXXXXXXXX&Expires=1570334549&Signature=YYYYYYYYYYYYYY, _kCFStreamErrorDomainKey=4} [-1001]
Это мой кодсегмент для отправки запроса PUT:
с Alamofire 5.0 / Swift 5.0
let _ = AF.upload(fileURL, to: uploadURL, method: .put) .response { response in switch response.result { case .success( _): if let dataHeader = response.response?.allHeaderFields { print(dataHeader) } break case .failure(let error): print(error) break } if let statusCode = response.response?.statusCode { print(statusCode) } } .uploadProgress { (progeress) in let fProgress = Float(progeress.fractionCompleted) print("fProgress = \(fProgress)") }
Вы можете увеличить время ожидания запроса. Когда вы получаете -1001, который равен NSURLErrorTimedOut , то вы знаете, что это был тайм-аут.
Сообщение об ошибке обычно означает, что ваши данные слишком велики, чтобы загрузить их вовремя. Возможно, попробуйте файл меньшего размера или с лучшими интернет-условиями.