swift - 在使用受限的应用程序中使用 API 的最佳方式?

标签 swift api server

<分区>

我的情况是,我正在构建一个应用程序(快速),它从 API 中提取数据并将它们显示在表格 View 中(例如最多 500 个单元格)。 API 出现问题。限制为每天 200 次调用和每月 6000 次调用,一次请求等于 100 条数据,因此显示 500 个单元格需要 5 个调用积分。

我对如何有效地使用这个 API 很困惑。目前,每次用户刷新 tableview 都会花费 5 个积分。因此,在执行了 40 次之后,就达到了当天的 API 上限。

我唯一的解决方案是在 js/ruby/python 中有一些脚本,每隔 x 分钟或 x 小时提取一次数据并将其保存到 Firebase 数据库或 firebase 云存储,然后在我的应用程序中我可以提取来自 Firebase 的数据?

我的另一个想法是在服务器上运行脚本并从那里提取数据。

我还缺少其他更简单的替代方案吗?

最佳答案

为了防止过度消耗,为什么不运行 API 并将结果保存到您自己的数据库中;创建一个特定于您的应用程序的自定义 API,以从您的个人存储中提取数据,这样您就可以控制提取高级 API 的间隔和频率。

您可以设置一个作业,每隔 x 时间使用高级数据自动更新您的个人数据库,更新新条目并添加您认为合适的新条目,而在客户端,他们将提取与您相同的高级数据拉;我会这样做,因为如果没有控制,你会发现自己面临着一个重大的扩展问题。

关于swift - 在使用受限的应用程序中使用 API 的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51810405/

相关文章:

python - 如何允许其他人连接到我的 Django 网站?

C Socket 程序未打印所需的输出(无错误)

ios - 无法使用类型为 'addMutableTrackWithMediaType' 的参数列表调用 '(mediaType: String, preferredTrackID: Int)'

Node.js 速率限制器身份验证 token 而不是 IP 地址

api - API 使用枚举时 Swagger 验证错误

php - 如何在 Asana 中按用户获取任务

java - 使用 Glassfish servlet 配置 Jetty 服务器

ios - UISwitch 开/关图像不适用于 iOS 10

ios - Swift iOS 以编程方式在导航栏下方设置 scrollView 约束

ios - 如何在 SwiftUI 中实现协议(protocol)和委托(delegate)