Alamofire需要大约10秒钟

时间:2016-09-28 19:00:32

标签: ios swift alamofire

我已经在我的Mac上运行此代码,具有良好的wifi和我的手机使用wifi /数据,我在下面的代码上加载时间非常慢。我的UI需要大约7-10秒来更新我在我的视图控制器中的第二个代码块中所做的更新。

这不是我第一次处理网络请求,而且我从未遇到过这种缓慢的行为。这是我第一次使用Alamofire和这种完成处理程序的东西我正在我的downloadProfileInformation中,其中DownloadComplete是()的类型 - > - > ()。

我想也许问题就在那里。在我完全下载所有内容之前,它不会更新用户界面,但是如果图片需要10秒才能下载?

enter image description here

https://blzgdapipro-a.akamaihd.net/game/unlocks/0x0250000000000BB0.png

这是可以从API中获取的链接示​​例。

我也不知道问题是否可能与API有关?我从来没有听说过这样的事情,但我不知道有什么可能。

https://api.lootbox.eu/documentation

编辑:

//Called with IBAction



PROFILE_URL = "\(URL_BASE)\(Info.sharedInstance.platform)/\(Info.sharedInstance.region)/\(Info.sharedInstance.battletag)/profile"

Alamofire.request(PROFILE_URL).responseJSON { response in
    let result = response.result

    if let dict = result.value as? Dictionary<String,Any> {

        if let error = dict["error"] as? String {
            print(error)

        } else {

            if let data = dict["data"] as? Dictionary<String,Any> {
                //Assigning variables to that value
                if let username = data["username"] as? String {
                 DispatchQueue.main.async {
                  self.battletagNameOutlet.text = username
                  print("battletag update happening")
                                }
                }
                if let level = data["level"] as? Int{
                ...
                }

                if let avatarURL = data["avatar"] as? String {
                ...
                }

                if let competitive = data["competitive"] as? Dictionary<String,Any> {
                    ....
                    }
                }

            }
        }
    }

}

}

1 个答案:

答案 0 :(得分:-1)

如果API链接的Per_Page超过50,通常加载会花费更多时间。处理API和包含图像和视频的请求时,这可能会导致延迟。

相关问题