ios - 如何取消 AWSTask要求?
问题描述
我正在 AWSS3 服务器中上传图像之类的文件,但无法取消请求。
我试图在上传任务开始后取消请求。我正在使用task.result.cancel()
方法来取消任务。
let awsTransferUtility = AWSS3TransferUtility.s3TransferUtility(forKey: AWSConfiguration.callbackKey)
let task = awsTransferUtility!.uploadFile(url,
bucket: bucket,
key: key,
contentType: file.type.contentType,
expression: expression,
completionHandler: completionHandler)
.continueWith(block: { (task) -> Any? in
if task.error != nil {
completion(nil, task.error)
}
return nil
}) as! AWSTask<AWSS3TransferUtilityUploadTask>
我只想取消请求,文件不会上传到服务器上。
解决方案
根据文档,您可以AWSS3TransferUtilityUploadTask
通过调用task.result
.
返回 AWSTask 的一个实例。成功初始化后,task.result 包含 AWSS3TransferUtilityUploadTask 的实例。
然后你应该能够调用cancel
实例AWSS3TransferUtilityUploadTask
。
let task: AWSTask<AWSS3TransferUtilityUploadTask> = ...
let uploadTask: AWSS3TransferUtilityUploadTask = task.result
uploadTask.cancel()
推荐阅读
- unit-testing - 通过 .NET SDK 模拟调用 Azure 认知搜索的任何工作示例?
- r - 添加一个虚拟因子以标准化多个图中的 x 轴
- amazon-web-services - AWS ec2 RequestSpotInstances - InvalidSubnetID.NotFound 在传递逗号分隔的子网 ID 时
- ros - 为什么不是所有五个防水 JSN-SR04T 超声波距离传感器都将 ping 传送到 ROS Noetic?
- python - Python中如何将YOLO格式注解转换为x1,y1,x2,y2坐标?
- python - SikuliLibrary 图像识别功能在 Windows 上不起作用
- node.js - Visual Studio 构建 njsproj Node.js 项目,即使自上次构建以来没有任何更改
- javascript - RxJs:当全部取消订阅时,中止延迟和共享的 observable
- javascript - 让引导程序使用 gridstack 小部件大小来调整大小?
- c# - 当输入记录数 > 1000 条记录时有效调用 GetByIds(MS Graph API 方法)