Google建议在原始查询后60分钟后在需要时再次检索基本网址,因为该网址已过期。到目前为止,一切都很好。但是,如果我正在开发照相馆并且在网格中显示5000或它们怎么办?我应该一次又一次查询API吗?他们使用的最大页面大小为100(对于Google驱动器,则为pf 1000),因此,如果是这样,我们将启动许多请求。我已经在本地缓存照片,但是当用户滚动到另一部分时,该网址将在一个小时后失效。
什么是最佳解决方案?
Google针对该用例有一个批量请求:https://developers.google.com/photos/library/reference/rest/v1/mediaItems/batchGet
无论如何,每个呼叫最多可以请求50个项目,因此无论如何都应将其中一些请求排队。
我个人在代码中自动将其设置为。当我加载的baseUrl给我一个403时,它会自动获取mediaitem更新的对象并重试。
[另外,您不应该在不同的应用程序启动中缓存基本URL或通常的mediaobject(假设您正在编写应用程序)。您应该只保留mediaItem ID,并在需要时重新加载它或整个集合。