首页 > 解决方案 > 我的应用程序怎么可能达到 google youtube api 上的每日 10,000 个查询配额?

问题描述

所以在我的谷歌开发者控制台中,它说我在编写应用程序几个小时后达到了 10,000 个查询配额,这怎么可能?我的应用程序是一个 youtube 克隆,每次运行时只使用 3 个调用,用于 3 个主页/趋势/订阅源,以及在您搜索某些内容时使用的另一个调用。

我将为您提供调用这些函数的 cellForItemAt 部分。如果您想查看所有功能,我可以给您 git 链接,因为我的应用程序分为数据层/域层/ui 层,这使其成为 JSONdecoder 函数的一条很长的路径,这是一个返回数组的简单完成处理程序的视频。我也知道每次滑动集合视图时都会调用这些函数,但我在使用它时并没有滑动太多,以前我曾经在 viewdidload 中调用 fetch 函数,但我仍然达到了每日配额,尽管在 3 之后小时。

我已经尝试在制作应用程序时只使用一个电话,但我仍然设法很快达到配额。我确实测试了很多应用程序,但我怀疑我每小时运行它超过 30 或 40 次......

编辑:哈哈我想通了,collectionView.reloadData() 一遍又一遍地调用函数,我刚得到一个新的 api 密钥,让它运行 30 秒,api 调用高达 4000。哈哈,我现在笑了,谢谢你的回复!

        if indexPath.row == 3{
            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: accountCellId, for: indexPath)
            guard let accountCell = cell as? AccountCell else {return cell}
            return accountCell
        }

        let cell = collectionView.dequeueReusableCell(withReuseIdentifier: cellId, for: indexPath)
        guard let feedCell = cell as? SlidingVideoFeedCell else {return cell}
        switch indexPath.row {
        case 0:
            fetchHome()
            feedCell.setUpViews(videos: videoFeeds["home"], images: images)
        case 1:
            fetchTrending()
            feedCell.setUpViews(videos: videoFeeds["trending"], images: images)
        case 2:
            fetchSubscription()
            feedCell.setUpViews(videos: videoFeeds["subscription"], images: images)
        default:
            print("out of range")
        }
            return feedCell
        }

标签: iosswiftyoutube-api

解决方案


推荐阅读