Chcę zrobić odpowiednik np. this API explorer call przy użyciu google ruby API client.Uzyskiwanie dostępu do interfejsu API Google+ (Ruby) w trybie publicznym
To powinno być po prostu:
require 'rubygems'
require 'google/api_client'
require 'httpadapter/adapters/net_http'
@client = Google::APIClient.new(
:key => MY_SIMPLE_API_SERVER_KEY,
:host => 'www.googleapis.com',
:http_adapter => HTTPAdapter::NetHTTPAdapter.new,
:pretty_print => false
)
@plus = @client.discovered_api('plus', 'v1')
status, headers, body = @client.execute(
@plus.people.list_by_activity,
'activityId' => 'z12nspyxxufislit423eex442zqpdtqnk',
'collection' => 'plusoners',
'maxResults' => '100',
'authenticated' => 'false'
)
public_activity = JSON.parse(body[0])
jednak, że execute
wyniki rozmów w ArgumentError: Missing access token.
ja nie chcą użytkowników zalogować; Chcę tylko uzyskać dostęp do danych publicznych. Jak mam to zrobic?
'@client.authorization = nil' działało idealnie dla moich potrzeb. Chciałbym jednak zauważyć, że 'execute' zwraca pojedynczą wartość' Google :: APIClient :: Result', a nie tablicę 3-wartościową, więc bit 'status, headers, body =' jest niepoprawny ('response.status',' response.headers' i 'response.body' działają jednak). Złożę na to błąd. – Sai
@Sai: Odpowiedź Jenny pochodzi ze starszej wersji alfa klienta. Obecna wersja zwraca obiekt 'Result', jak mówisz. –