S3に問題があります。 トラブルシューティングの3時間後(その間に私はIAMの役割について学んだ&それらを作成するために管理されました)私はアマゾンS3にfbプロフィール画像をアップロードしようとしています。jpgからS3へアップロード:「リクエスト本体が予期せず終了しました」
マイコード:
if let imageData = NSData(contentsOf: NSURL(string: url) as! URL) {
let fileName = ProcessInfo.processInfo.globallyUniqueString + ".jpg"
let fileURL = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(fileName)
let image = UIImage(data: imageData as Data)
let imageData = UIImageJPEGRepresentation(image!, 1.0)!
do {
try imageData.write(to: fileURL! as URL)
} catch _ {
self.log.error("Could not write to file.")
}
let transferManager = AWSS3TransferManager.default()
let uploadRequest = AWSS3TransferManagerUploadRequest()
uploadRequest?.bucket = "app-files"
uploadRequest?.key = "user-data/" + awsId! + "_primary_profile_picture.jpg"
uploadRequest?.body = fileURL!
transferManager.upload(uploadRequest!).continueWith(executor: AWSExecutor.mainThread(), block: { (task:AWSTask<AnyObject>) -> Any? in
if let error = task.error as? NSError {
if error.domain == AWSS3TransferManagerErrorDomain, let code = AWSS3TransferManagerErrorType(rawValue: error.code) {
switch code {
case .cancelled, .paused:
break
default:
print("Error uploading: \(uploadRequest?.key) Error: \(error)")
}
} else {
print("Error uploading: \(uploadRequest?.key) Error: \(error)")
}
return nil
}
let uploadOutput = task.result
print("Upload complete for: \(uploadRequest?.key)")
return nil
})
}
**問題** 私は継続的にこのようになりますS3からThe request body terminated unexpectedly
エラー取得しています:私は何が起こっているかわからない
Error uploading: Optional("user-data/eu-west-1:xxxx-xxxx-xxxx-xxxx-xxxxxxxxxx_primary_profile_picture.jpg")
Error: Error Domain=com.amazonaws.AWSS3ErrorDomain Code=0 "(null)"
UserInfo={HostId=XXX,
Message=The request body terminated unexpectedly,
Code=IncompleteBody,
RequestId=1485A0FFBD7819D7}
を間違っている、私はデバッグして、fileName、fileURL、imageDataは大丈夫と思われる
SDKのv2.5.1にバグがあります。可能であれば、2.5.0にダウングレードしてください。 – donkon
Swift 3サポートのためにアップグレードする必要がありました:/ 2.5は機能しませんでした(Cognito、Dynamo、...) –
Swift 3サポートが2.5.0で導入されました。コグニティとダイナモがうまくいかなかった方法についていくつか詳しく説明できますか? – donkon