Ruby on rails 需要序列化或加载一次Google';Rails中的s API(google API ruby客户端)

Ruby on rails 需要序列化或加载一次Google';Rails中的s API(google API ruby客户端),ruby-on-rails,ruby-on-rails-4,google-api-client,Ruby On Rails,Ruby On Rails 4,Google Api Client,注意:确保本地缓存您正在使用的API的副本。做 因此,每次跑步都可以节省往返谷歌服务器的时间。你可以这样做 通过将返回的Google::ApicClient::API对象序列化为 适当的位置。有关更多详细信息,请查看 对于序列化对象,我相信这很简单。我已经看过他们提供的,但我不知道这是如何做到的。在一个可伸缩的Rails服务器中,最好在Rails服务器启动时加载API,并让Rails系统内存中的无数客户端都可以使用它?我相信把它编入数据库是个坏主意 我需要以这样一种方式编写它,即发现的API请求

注意:确保本地缓存您正在使用的API的副本。做 因此,每次跑步都可以节省往返谷歌服务器的时间。你可以这样做 通过将返回的Google::ApicClient::API对象序列化为 适当的位置。有关更多详细信息,请查看

对于序列化对象,我相信这很简单。我已经看过他们提供的,但我不知道这是如何做到的。在一个可伸缩的Rails服务器中,最好在Rails服务器启动时加载API,并让Rails系统内存中的无数客户端都可以使用它?我相信把它编入数据库是个坏主意

我需要以这样一种方式编写它,即发现的API请求不会针对每个用户实例和调用运行。我想一个初始值设定者会很好。我已经搜索了的Rails配置。但似乎没有一个站点范围内的模型。每个示例在每次执行时加载并调用所有内容

最好的答案是一个初始值设定项,它允许我在服务器启动时加载API,并能够从许多已经保存的不同用户凭据调用它

下面是我将使用的一个API发现:

Google::APIClient.new(
  application_name: "My App Name", application_version: "1.0.0"
).discovered_api('plusDomains')

缓存是自动完成的。

显然,文档不同步

在示例代码中,有:

深入到客户机本身,缓存实际上是在默认情况下处理和使用的

# Initialize API Service.
#
# Note: the client library automatically creates a cache file for discovery
# documents, to avoid calling the discovery service on every invocation.
# To set this to an ActiveSupport cache store, use the :cache_store parameter
# (or, alternatively, set it to nil if you want to disable caching).