我有一个函数可以对REST API进行多次调用。初始调用完成后,我获得一些值以进行下一次调用并将JSON解析为自定义对象。一旦完成,我再次使用新的URL调用该函数。我总共打了8个电话,总共需要10-14秒。我使用Alamofire进行网络和SwiftyJSON解析。我在函数中加入了一系列时间间隔检查,以查看哪些内容占用了最多的时间。一旦我得到了JSON数据,运行一些逻辑和解析总共需要300ms,但是当我通过Alamofire发出请求让JSON恢复时,需要的时间为1.3-1.5秒。我进行了大量的测试,而且我能够获得的最好时间是一次呼叫700ms,但大多数时间超过1秒。当我在Postman中运行它们时(总共有8个,延迟300毫秒),每次需要300毫秒到700毫秒。大约快两倍。这听起来是否正确,或者我是否应该看到请求在邮递员身上发生?使用同一台计算机并在模拟器和我的手机上运行该应用程序,获得相同的结果。这里是我的精简代码:Alamofire请求缓慢?
func parse() {
Alamofire.request(jsonURL).responseJSON { response in
switch response.result {
case .success(let value):
let json = JSON(value)
//Check for 200 code
if json["meta"]["code"].intValue == 200 {
// doing lot of stuff
}
case .failure(let error):
print(error)
print("json failed")
}
}
}
感谢您的响应。我删除了这张支票,并且当我比较邮递员的时间时,它似乎没有太多的影响。为了以防万一,我会保留它。 – HH887
你可以发布你的日志和邮递员结果吗?另外,你能告诉我你的代码吗?如果没有太多的效果,您可能需要保留代码。 –