1
我想设置一个S3来存储我的iOS客户端的配置文件图像。我有它的工作,但我在我国的另一边我的合作伙伴无法上传,所以乱搞,现在我也无法上传。我仍然可以下载那里的图像,但仅此而已。无法将图像上传到S3从iOS
下面是我用上传它们的代码:
let credentialsProvider = AWSCognitoCredentialsProvider(regionType:.USWest2, identityPoolId: myIdentityPoolId)
let configuration = AWSServiceConfiguration(region:.USWest2, credentialsProvider:credentialsProvider)
AWSServiceManager.defaultServiceManager().defaultServiceConfiguration = configuration
let uploadRequest = AWSS3TransferManagerUploadRequest()
uploadRequest.body = generateImageUrl(remoteName, image: image)
uploadRequest.key = remoteName
uploadRequest.bucket = S3BucketName
uploadRequest.contentType = "image/jpeg"
let transferManager = AWSS3TransferManager.defaultS3TransferManager()
// Perform file upload
transferManager.upload(uploadRequest).continueWith(executor: AWSExecutor.mainThreadExecutor(), block: { (task:AWSTask) -> AnyObject? in
if let error = task.error {
if error.domain == AWSS3TransferManagerErrorDomain, let code = AWSS3TransferManagerErrorType(rawValue: error.code) {
switch code {
case .Cancelled, .Paused:
break
default:
print("Error uploading: \(uploadRequest.key)")
}
} else {
print("Error uploading: \(uploadRequest.key)")
}
return nil
}
let uploadOutput = task.result
print("Upload complete for: \(uploadRequest.key)")
return nil
我得到这些错误:
2017-03-08 ... [] nw_endpoint_flow_prepare_output_frames [10.1 52.218.128.128:443 ready socket-flow (satisfied)] Failed to use 1 frames, marking as failed
2017-03-08 ... [] nw_endpoint_handler_add_write_request [10.1 52.218.128.128:443 failed socket-flow (satisfied)] cannot accept write requests
2017-03-08 ... [] __tcp_connection_write_eof_block_invoke Write close callback received error: [22] Invalid argument
2017-03-08 ... AWSiOSSDK v2.5.1 [Error] AWSURLSessionManager.m line:212 | -[AWSURLSessionManager URLSession:task:didCompleteWithError:] | Session task failed with error: Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={NSUnderlyingError=0x17005c560 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)" UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}}, NSErrorFailingURLStringKey=<myUrl>, NSErrorFailingURLKey=<myUrl>, _kCFStreamErrorDomainKey=4, _kCFStreamErrorCodeKey=-2102, NSLocalizedDescription=The request timed out.}
任何指针将不胜感激。这是我第一次使用S3,而且我还很迷茫。提前致谢!
请将您的答案标记为解决方案。 – Macabeus