确定“discovered_api”的参数

时间:2013-08-27 20:22:56

标签: google-api-ruby-client

这可能是一个非常愚蠢的问题,但是如何确定在客户端“discovered_api”调用中传递的参数?什么是执行的“api_method”

例如,我正在尝试调用“GET https://www.googleapis.com/admin/directory/v1/users”的Admin SDK用户列表调用。

似乎没有一种明确的方法可以从API参考中提取它,或者我只是在错误的位置找到它?

2 个答案:

答案 0 :(得分:7)

我误解了原来的问题。我仍然认为另一篇文章具有潜在的价值,所以我想我会添加一个新答案。

我进行了一些实验,这将显示标题,ID以及是否首选。 ID有一个冒号,它似乎是在调用discovered_api时将第一个和第二个参数分开的位置。

puts "Title \t ID \t Preferred"
client.discovered_apis.each do |gapi| 
  puts "#{gapi.title} \t #{gapi.id} \t #{gapi.preferred}"
end

答案 1 :(得分:4)

我有这个问题。对于像get这样的方法,我想出来了。

创建您的客户端,然后执行以下操作

api = client.discovered_api("admin", "directory_v1")

puts "--- Users List ---"
puts api.users.list.parameters

puts "--- Users Get ---"
puts api.users.get.parameters

这将打印出参数。您也可以使用api.users.get.parameter_descriptions

如果你试图探究这样的问题,可能有用的东西是打印掉所有可用的方法。我通常这样做。

puts api.users.insert.methods - Object.methods

如果您尝试了那个,您将看到api.users.insert在您拿走每个对象共有的方法后具有以下方法。

discovery_document
api
method_base
method_base=
description
id
http_method
uri_template
media_upload
request_schema
response_schema
normalize_parameters
generate_uri
generate_request
parameter_descriptions
parameters
required_parameters
optional_parameters
validate_parameters

我希望有所帮助。

詹姆斯