ProgressBar而POST API调用Swift 4

时间:2018-09-14 07:15:08

标签: ios swift swift4 afnetworking xcode9

我正在通过POST API调用(AFNetworking)在服务器上上传1900个联系人。从服务器获得响应需要一些时间。在上传期间,我想显示一个进度条以显示估计的剩余上传时间,因为我没有上传任何文件,所以我使用json字符串发布参数。

请帮助我,通过Google搜索,我找不到关于上传或下载API的任何帮助。

1 个答案:

答案 0 :(得分:0)

在StackOverflow上有多个答案已经回答了您的特定用例。例如,看看这个问题:get progress from dataTaskWithURL in swift 对于您的特定用例,已经使用AFNetworking回答了:AFNetworking 3.x multipart form upload

总而言之,您要做的是 1。计算要上传的数据总量,然后 2。通过URLSession委托方法上传的数据总量

然后,您可以将此信息绑定到您的UI元素,例如您的UIProgressView。确保您的上传任务是异步的,以便具有无阻塞的上传任务,并能够在上传进行时更新您的UI。这也意味着除了上传任务外,刷新UI的代码应在主线程上运行。您可以根据需要通过DispatchQueue.main.async强制执行此操作。