这可能是一个非常愚蠢的问题,但是如何确定在客户端“discovered_api”调用中传递的参数?什么是执行的“api_method”
例如,我正在尝试调用“GET https://www.googleapis.com/admin/directory/v1/users”的Admin SDK用户列表调用。
似乎没有一种明确的方法可以从API参考中提取它,或者我只是在错误的位置找到它?
答案 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
我希望有所帮助。
詹姆斯