可以批量处理Freebase API调用吗?

问题描述 投票:0回答:2

在我的PHP应用程序中,我从用户输入他喜欢的电影,然后查询Topic API以检索每个电影的详细信息。

有没有一种方法可以批量处理这些呼叫,而不必发出多个http请求? 例如,如果用户输入10个电影名称,是否可以发出一个http请求以检索所有10个电影的信息,或者我应该进行10个API调用-每个电影一次? 后一种方法严重限制了我的应用程序的速度。

freebase
2个回答
1
投票

我看到了几种不同的可能性:

  1. 您可以并行触发多个Topic API请求。 没有规则说必须按顺序进行。 这将大大减少等待时间。

  2. 您可以使用Freebase前面的缓存在本地存储最近获取的结果。 这可能是一个独立于其他事物的好主意,它将大大减少缓存结果的往返时间。

  3. 您可以使用Google API提供的HTTP Batch功能来一次发出多个请求。 我不是100%确信它可以与Topic API一起使用,但是我知道它可以与MQLread一起使用,所以也许您会转换为使用它。

  4. Search API可以返回与主题API几乎相同的形式的结果,并且可以使用多个ID,因此您可以按照以下方式进行操作: https : //www.googleapis.com/freebase/v1/search?indent= true&filter =%28any + mid:/ m / 0dtfn%20mid:/ m / 0ddjy%29&output =(all:/ film)&indent = true


0
投票

Topic API让您将主题的ID放在路径中,这将其限制为每次调用一个主题。 有些语言API可以传递ID列表,但它们仅接受带有一个主题的列表。

© www.soinside.com 2019 - 2024. All rights reserved.