Interfejsy API sieci społecznościowych: portal internetowy do świata rzeczywistego
Opublikowany: 2022-03-11Interfejsy API sieci społecznościowych przeszły długą drogę, odkąd firma Google wydała pierwszą wersję swojego interfejsu API YouTube w maju 2008 r., a Facebook wydał pierwszą wersję interfejsu API Graph w kwietniu 2010 r. Obecnie te interfejsy API dają możliwość odpytywania platform sieci społecznościowych o posty , użytkowników, kanały i dane demograficzne. Pozwalają nawet stworzyć własną usługę lub dowiedzieć się więcej o swojej bazie użytkowników.
W tym artykule przyjrzymy się sposobom wykorzystania niektórych popularnych interfejsów API sieci społecznościowych:
- Facebook (interfejs API do wykresów i marketingu)
- Świergot
- Youtube
Omówimy również ich ograniczenia i zapoznamy się z niektórymi przydatnymi narzędziami, które są dostępne do użytku z tymi interfejsami API. W dalszej części artykułu przyjrzymy się również, jak zintegrować te API z dowolną aplikacją Railsową.
Skoncentruję się na jednym interfejsie API sieci społecznościowych na raz i wyjaśnię jego możliwości, ograniczenia i dostępne narzędzia. W dalszej części tego artykułu pojawi się macierz z różnymi interfejsami API i ich właściwościami, która umożliwi lepsze porównanie.
Aby korzystać z interfejsów API, musisz najpierw skonfigurować aplikację, która tworzy zapytania w imieniu Twojej aplikacji za pomocą żądań opartych na protokole OAuth. Użytkownicy będą uwierzytelniać się w Twojej aplikacji, a następnie uzyskasz dostęp do ich danych za pomocą otrzymanego tokena dostępu użytkownika.
Przestarzały FQL (Facebook Query Language) był kiedyś językiem zapytań podobnym do SQL, który mógł być używany do uzyskiwania dostępu do wszystkich danych z Facebooka.
Facebook wypuścił pierwszą wersję swojego Graph API w kwietniu 2010. Najnowsza wersja w momencie pisania tego artykułu to 2.6, która została wprowadzona 12 kwietnia 2016. Jest to API niskiego poziomu oparte na HTTP, które może być używane do wysyłania zapytań danych, twórz posty, a nawet twórz automatyczne kampanie reklamowe.
Narzędzia
Graph API Explorer jest najczęściej używanym narzędziem podczas pracy z Facebook API. Umożliwia wykonywanie zapytań Graph API w przeglądarce i sprawdzanie wyników: Możesz użyć jednego z tokenów dostępu swojej aplikacji lub utworzyć go w locie z wybranymi zakresami.
Możliwości
Graph API to interfejs API oparty na REST, który umożliwia tworzenie, aktualizowanie i usuwanie obiektów na żądanie HTTP w niektórych węzłach.
Token dostępu
Aby uruchamiać zapytania w interfejsie API Graph, potrzebujesz tokena dostępu, który jest uzyskiwany, gdy tylko użytkownik pomyślnie dokona autoryzacji w Twojej aplikacji. Token dostępu powinien być przechowywany przez Twoją aplikację.
Zakresy
Zakresy określają, jakie akcje można wykonać w imieniu użytkownika. Aplikacja prosi o określone zakresy, gdy użytkownik autoryzuje w aplikacji. Na przykład zakres publish_actions
umożliwia aplikacji publikowanie postów w imieniu użytkownika. Zakres wiadomości e-mail umożliwia aplikacji odczytywanie wiadomości e-mail użytkownika. Pełny przegląd wszystkich zakresów znajduje się w oficjalnej dokumentacji.
Niektóre zakresy, takie jak publication_actions lub publish_actions
, wymagają ads_management
przez Facebooka przed wydaniem aplikacji.
Przykłady
Aby zademonstrować, jak działa Graph API, pokażę Ci, jak czytać, tworzyć, aktualizować i usuwać posty za pomocą API.
Aby uzyskać własne posty, możesz wykonać zapytanie GET /me/posts
. Wynikiem będzie ciąg znaków JSON z listą postów, w tym ich wiadomością, created_time i id. Możesz użyć pretty
parametru lub programu formatującego JSON, aby odpowiedź wyglądała na mniej zaśmieconą.
Aby uzyskać więcej danych o swoich postach, możesz rozszerzyć zapytanie o pola jako parametry zapytania. Na przykład zapytanie me/posts?fields=reactions, picture
da ci zdjęcie i reakcje na post.
Aby utworzyć post, wystarczy wysłać akcję POST do kanału krawędziowego, np. me/feed
, z parametrami takimi jak message: hello world
. Graph API zwróci obiekt JSON z identyfikatorem utworzonego posta. Następnie możesz wyświetlić post pod adresem http://facebook.com/[post_id]
.
Aby zaktualizować post, możesz wysłać żądanie POST do węzła posta z polami do aktualizacji jako parametrami; np. /[post_id]
i parametry takie jak Message: lorem ipsum
. Zwrócony zostanie wskaźnik sukcesu z wartością prawda lub fałsz.
Aby usunąć post, możesz po prostu wysłać żądanie DELETE do węzła z identyfikatorem postu (np. /[post_id]
). Zwracana wartość będzie obiektem JSON z wartością sukcesu true lub false.
Pełny przegląd wszystkich węzłów i akcji jest dostępny w Graph API Reference.
Marketingowy API
Marketingowe API zasługuje na szczególną uwagę, ponieważ jest potężnym narzędziem do zarządzania reklamami na Facebooku i uzyskiwania informacji o reklamach za pośrednictwem Twojej aplikacji.
Działa tak samo jak inne metody Graph API. Potrzebujesz jednak zakresu ads_management
, aby uzyskać dostęp do reklam użytkownika. Facebook musi również przejrzeć Twoją aplikację, zanim będzie można ją opublikować.
Testowanie
Po utworzeniu aplikacji jest ona w trybie deweloperskim i automatycznie widoczna w panelu aplikacji (tj. https://developers.facebook.com/apps/
).
W trybie deweloperskim dostęp do Twojej aplikacji mają tylko administratorzy, programiści i testerzy. Możesz dodać testerów i administratorów w sekcji ról pulpitu nawigacyjnego aplikacji.
Proces recenzji
Gdy dodajesz określone uprawnienia, Facebook musi sprawdzić Twoją aplikację, zanim będzie można ją opublikować. Proces przeglądu jest określony przez niniejszy zestaw wytycznych.
Aby przesłać określone elementy do sprawdzenia, możesz je po prostu dodać w sekcji Przegląd aplikacji na pulpicie nawigacyjnym aplikacji. Facebook poprowadzi Cię następnie przez proces weryfikacji i otrzymasz powiadomienie, gdy Twoja aplikacja zostanie zatwierdzona.
Ograniczenia i obejścia
Limity szybkości
Aplikacja może wykonać łącznie 200 połączeń na godzinę na użytkownika. Jeśli osiągniesz ten limit, wywołania interfejsu API spowodują błąd.
Wyszukiwanie postów na Facebooku
Facebook ogranicza wyszukiwanie postów i tagów na Facebooku za pomocą Graph API i FQL. Możesz jednak użyć interfejsu Google Search API, aby wyszukać publiczne posty na Facebooku, a następnie użyć identyfikatora posta w adresie URL, aby uzyskać więcej informacji o konkretnych postach za pośrednictwem interfejsu API Graph.
Uzyskiwanie niestandardowych danych o odbiorcach
Audience Insights na Facebooku to potężne narzędzie badawcze, które pozwala dowiedzieć się więcej o określonej grupie odbiorców w oparciu o zainteresowania, dane demograficzne lub inne atrybuty (np. zbiór adresów e-mail).
Nie znalazłem jednak sposobu na automatyczne tworzenie statystyk odbiorców za pośrednictwem interfejsu API reklam. Daj nam znać w komentarzach, jeśli masz jakieś kreatywne pomysły lub sugestie na ten temat.
Interfejs API Instagrama został po raz pierwszy wydany w kwietniu 2014 r. i umożliwia tworzenie aplikacji, które analizują posty użytkowników i pomagają użytkownikom zarządzać własnymi postami.
Narzędzia
Ponieważ konsola API od Instagrama jest przestarzała w czasie tego artykułu, polecam używać Apigee do celów testowych w przeglądarce.
Możliwości
Interfejs API Instagrama jest interfejsem API opartym na REST. Wszystkie jego punkty końcowe są opisane w ich oficjalnej dokumentacji.
Token dostępu
Aby uruchamiać zapytania w interfejsie API Instagrama, potrzebujesz tokena dostępu, który jest uzyskiwany zaraz po autoryzacji użytkownika w Twojej aplikacji. Aby użytkownik otrzymał token dostępu, musi zostać skierowany do adresu URL autoryzacji Twojej aplikacji. Następnie serwer przekieruje użytkownika po autoryzacji Twojej aplikacji i wtedy będziesz mógł odczytać token.
Zakresy
Twoja aplikacja może prosić o różne uprawnienia. Na przykład „podstawowe” ogranicza Cię do czytania informacji o profilu użytkownika i multimediów. „Public_content” umożliwia czytanie dowolnego profilu publicznego i mediów w imieniu użytkownika.
Przykłady
Aby zademonstrować, jak działa interfejs API Instagrama, przejdę przez kilka przykładów opartych na punkcie końcowym mediów https://api.instagram.com/v1/media/popular
.
Ten punkt końcowy zwraca obecnie popularne media z Instagrama, jeśli jako parametr przekazano token dostępu. Wynikiem będzie tablica postów JSON zawierająca dla każdego identyfikatora mediów, link do jego obrazu, polubienia, komentarze, użytkownika, który je opublikował, i kilka innych atrybutów.
Możesz użyć apigee, aby pobawić się i dowiedzieć się więcej o punktach końcowych API i ich parametrach.
Testowanie
Każda nowa aplikacja stworzona na platformie Instagram uruchamia się w trybie piaskownicy. Jest to w pełni funkcjonalne środowisko, które umożliwia testowanie publicznie dostępnych punktów końcowych interfejsu API przed przesłaniem aplikacji do przeglądu.
Aby przetestować swoją aplikację, po prostu utwórz wersję testową i uruchamiaj wszystkie zapytania za pośrednictwem tej wersji, a nie wersji aktywnej, która przeszła ocenę.
Proces recenzji
Aplikacje w trybie piaskownicy mogą korzystać z dowolnego punktu końcowego interfejsu API, ale są ograniczone do ograniczonej liczby użytkowników i multimediów. To świetny mechanizm do tworzenia i testowania aplikacji.
Aby rozpocząć transmisję na żywo i uzyskać dostęp do wszystkich treści na Instagramie, musisz przesłać swoje zgłoszenie do sprawdzenia. Po sprawdzeniu będziesz mógł poprosić o zakresy tylko dla użytkowników, dla których Twoja aplikacja została zatwierdzona.
Ograniczenia i obejścia
Analiza demograficzna
W chwili pisania tego artykułu nie ma możliwości uzyskania informacji o wieku, płci lub zainteresowaniach użytkowników publicznych, ponieważ Instagram nie dostarcza tych informacji.
Aby uzyskać dane demograficzne o obserwujących lub listę użytkowników Instagrama, musisz przejrzeć ich wszystkich i spróbować określić ich wiek, płeć lub zainteresowania na podstawie ich obserwujących lub informacji zawartych w ich biografii.
Dobre rozwiązanie Big Data dla tego problemu może być cenną usługą dla niektórych firm.
Limity szybkości
Wszystkie limity stawek na platformie Instagram są kontrolowane za pomocą tokena dostępu w przesuwanym 1-godzinnym oknie. Aplikacje na żywo mają wyższe limity szybkości niż aplikacje w trybie piaskownicy. Globalny limit szybkości dla aplikacji działającej na żywo wynosi obecnie 5000 połączeń na godzinę.
Świergot
Twitter API został po raz pierwszy wydany we wrześniu 2006 roku. Jest to publiczny interfejs API REST, który zapewnia dostęp do odczytu i zapisu danych Twittera. Uwierzytelnianie odbywa się przy użyciu protokołu OAuth. Odpowiedzi są w formacie JSON.
Narzędzia
Twitter posiada konsolę API wspieraną przez apigee, która może być używana do testowania żądań w przeglądarce.
Możliwości
Interfejs API REST pozwala uzyskać tweety użytkownika, obserwujących i obserwowanych ludzi. Możesz także wyszukiwać hashtagi w innych tweetach.
Token dostępu
Twitter pozwala tworzyć aplikacje, w których użytkownicy mogą się uwierzytelniać w zamian za token dostępu. Model uwierzytelniania to OAuth.
Zakresy
Istnieją tylko dwa uprawnienia, które należy ustawić na stronie ustawień aplikacji: Tylko do odczytu oraz Odczyt i zapis. Ta ostatnia pozwala tworzyć tweety i wykonywać inne czynności związane z publikowaniem w imieniu użytkownika.
Przykłady
Aby zademonstrować użycie Twitter API, pobiorę tweety autoryzowanego użytkownika. Wynikiem jest tablica JSON zawierająca obrazy, ulubione, retweety, adresy URL, datę utworzenia i inne atrybuty tweeta. Użyj Apigee, aby bawić się i dowiedzieć się więcej o punktach końcowych API i ich parametrach.
Proces testowania i przeglądu
Obecnie nie ma dostępnego procesu sprawdzania ani trybu testowego dla interfejsu Twitter API.
Ograniczenia i obejścia
Analiza demograficzna
Obecnie nie ma łatwego sposobu na uzyskanie danych demograficznych od czyichś obserwatorów na Twitterze. Podejście brutalnej siły polegałoby na przeglądaniu każdego obserwującego i próbowaniu uzyskania danych za pośrednictwem ich biologicznych i połączonych kont w sieciach społecznościowych.

Następnie możesz poczynić dalsze założenia na podstawie zebranych danych obserwujących poprzez analizę danych. Innym sposobem na uzyskanie większej ilości informacji jest płatna platforma GNIP z interfejsami API dla przedsiębiorstw na Twitterze. Między innymi umożliwia tworzenie odbiorców i uzyskiwanie informacji o nich za pośrednictwem interfejsu API. Interfejs API jest obecnie w wersji BETA.
Limity szybkości
Twitter ma limity stawek na użytkownika i na 15 minut. Jeśli Twoja aplikacja ma wiele tokenów, możesz po prostu zastępować tokeny dla operacji publicznych, aby uniknąć przekroczenia limitu.
Youtube
Interfejs API danych YouTube został po raz pierwszy wprowadzony w styczniu 2013 r. Umożliwia dodawanie funkcji YouTube do aplikacji, wyszukiwanie treści i analizowanie danych demograficznych kanału YouTube. Jest to oparty na tokenie interfejs API REST oparty na protokole OAuth, który zwraca odpowiedzi JSON.
Narzędzia
API Explorer umożliwia testowanie nieautoryzowanych i autoryzowanych żądań. Możesz uruchamiać żądania z przeglądarki na dostarczonych punktach końcowych.
Możliwości
Możesz między innymi pracować z aktywnościami, czatami, transmisjami na żywo, listami odtwarzania, kanałami, filmami i subskrypcjami. Większość punktów końcowych wymaga autoryzacji za pomocą konta YouTube.
Token dostępu
Interfejs YouTube Data API obsługuje protokół OAuth 2.0 do autoryzacji dostępu do prywatnych danych użytkownika. Gdy użytkownik zostanie autoryzowany w Twojej aplikacji, zostanie przekierowany do Twojej aplikacji, gdzie należy zapisać token dostępu.
Aby korzystać z autoryzacji OAuth 2.0, musisz najpierw uzyskać dane uwierzytelniające w konsoli programisty Google.
Zakresy
Interfejs API danych YouTube obsługuje obecnie następujące zakresy:
- Wymuś SSL - Zarządzaj swoim kontem YouTube, ale tylko przez połączenie SSL.
- Domyślny — zarządzaj swoim kontem YouTube. Ten zakres jest funkcjonalnie identyczny z zakresem youtube.force-ssl, ale nie wymaga połączenia SSL.
- Tylko do odczytu — wyświetl swoje konto YouTube.
- Prześlij — przesyłaj filmy z YouTube i zarządzaj swoimi filmami w YouTube.
- Audyt kanału partnera — pobierz informacje, które sieci wielokanałowe wykorzystują jako kryteria akceptowania lub odrzucania kanału w swojej sieci.
Przykłady
Jako przykład wykorzystania Youtube Data API, następujące zapytania dotyczące filmów z „kodowaniem” w tytule i opisie:
https://www.googleapis.com/youtube/v3/search?part=snippet&q=coding&key={YOUR_API_KEY}
Wynikiem jest obiekt JSON zawierający tytuł, opis, videoId i channelId. Możesz użyć tego ostatniego, aby dowiedzieć się więcej o kanale.
Parametr part
jest wymagany dla każdego żądania API, które zwraca określony zasób. Parametr identyfikuje właściwości zasobów, które powinny zostać uwzględnione w odpowiedzi interfejsu API. Na przykład zasób wideo składa się z następujących części: snippet, contentDetails, fileDetails, player, processingDetails, nagrywanieDetails, statystyki, status, sugestie, topicDetails.
Wszystkie inne parametry, z wyjątkiem klucza API, różnią się w zależności od wywołania. Przeczytaj więcej na ten temat w przewodniku API.
Interfejs API Pinterest został pierwotnie wydany w kwietniu 2015 r. Jest to interfejs API RESTful, który zapewnia dostęp do danych użytkownika na Pinterest, takich jak tablice, piny, obserwujący i inne. Interfejs API Pinteresta korzysta z protokołu OAuth i umożliwia zarówno odczyt, jak i zapis podczas interakcji z treścią użytkownika.
Narzędzia
Podobnie jak inne, Pinterest udostępnia Eksplorator API do testowania ich punktów końcowych i uruchamiania na nich zapytań. Możesz rzucić okiem na wszystkie ich narzędzia tutaj.
Możliwości
Interfejs API Pinterest REST umożliwia tworzenie pinów, tablic i zapytań o dane Pinteresta za pomocą OAuth.
Token dostępu
Pinterest używa protokołu OAuth 2.0 do uwierzytelniania żądań między Twoją aplikacją a użytkownikami. Wszystkie żądania muszą być przesyłane przez HTTPS.
Zakresy
Zakresy określają, co aplikacja może zrobić w imieniu użytkownika. Pinterest używa następujących zakresów:
-
none
(musi znać identyfikator): użyj metody GET na profilu użytkownika, tablicy i szczegółach Pina oraz Pinach na tablicy. -
read_public
: Użyj metody GET na Pinach, tablicach i polubieniach użytkownika. -
write_public
: Użyj metod PATCH, POST i DELETE na pinach i tablicach użytkownika. -
read_relationships
: Użyj metody GET na obserwowanych i obserwujących użytkownika (na tablicach, użytkownikach i zainteresowaniach). -
write_relationships
: Użyj metod PATCH, POST i DELETE na obserwowanych i obserwujących użytkownikach (na tablicach, użytkownikach i zainteresowaniach).
Przykłady
Aby zademonstrować korzystanie z API Pinterest, zademonstruję, jak czytać najnowsze piny użytkownika:
https://api.pinterest.com/v1/me/pins/?access_token={your_token}&fields=id,link,note,url,counts,board,created_at
zwróci piny użytkownika wraz z jego identyfikatorem, linkiem, notatką, URL, polubienia i repiny.
Proces testowania i przeglądu
Aplikacje są początkowo w trybie programistycznym i muszą zostać przesłane do sprawdzenia, zanim zostaną wydane w trybie produkcyjnym.
Ograniczenia i obejścia
Analiza demograficzna
Nie ma wspólnego sposobu uzyskania danych demograficznych z tablicy. Możesz jednak spróbować zdobyć obserwujących tablicę i informacje o nich z ich biografii i linków do innych kont sieci społecznościowych. Możliwe byłoby również rozwiązanie big data nad wspólnymi połączeniami użytkownika.
Wyszukaj szpilki
Obecnie nie ma możliwości wyszukiwania pinów z określonymi tagami lub słowami kluczowymi za pośrednictwem interfejsu API. Możesz ominąć to ograniczenie, używając interfejsu API wyszukiwarki niestandardowej Google do wyszukiwania wyników tylko przy pinach Pinteresta i gromadzenia identyfikatora pinu za pomocą adresu URL. Identyfikator może być następnie wykorzystany do uzyskania informacji o kodzie za pośrednictwem interfejsu API.
Limity szybkości
Każda aplikacja (z unikalnym identyfikatorem aplikacji) może wykonać 1000 wywołań na punkt końcowy na godzinę dla każdego unikalnego tokena użytkownika.
Każda odpowiedź API zwraca nagłówek, który zawiera aktualizację o limitach szybkości. X-Ratelimit-Limit to limit stawki dla tego konkretnego żądania, a X-Ratelimit-Remaining to liczba żądań pozostałych w 60-minutowym oknie.
Jeśli przekroczysz limit szybkości dla danego punktu końcowego, otrzymasz kod błędu 429 „Za dużo żądań”.
Porównanie interfejsów API sieci społecznościowych
Wersja | Autoryzacja OAuth | Format | Dane demograficzne | |
---|---|---|---|---|
v2.6 Pierwsze wydanie: kwiecień 2010 | OAuth 2 | Żądania REST z odpowiedziami JSON | Utrzymany | |
v1 Pierwsze wydanie: kwiecień 2014 | OAuth 2 | Żądania REST z odpowiedziami JSON | Niewspierany | |
Świergot | v1.1 Pierwsze wydanie: wrzesień 2006 | Autoryzacja OAuth 1 | Żądania REST z odpowiedziami JSON | Obsługiwane tylko z GNIP |
Youtube | v3 Pierwsze wydanie: styczeń 2013 r. | OAuth 2 | Żądania REST z odpowiedziami JSON | Utrzymany |
v1 Pierwsze wydanie: kwiecień 2015 | OAuth 2 | Żądania REST z odpowiedziami JSON | Niewspierany |
Aplikacja demonstracyjna z Devise
Integracja tych interfejsów API w nowych lub istniejących aplikacjach dzięki mnóstwu pakietów i bibliotek interfejsów API sieci społecznościowych jest łatwiejsza niż kiedykolwiek. Większość nowoczesnych platform i frameworków ma sprawdzone biblioteki innych firm, które nawet ujednolicają aspekt uwierzytelniania wszystkich tych interfejsów API w jedną bibliotekę ze zgrabną architekturą wtyczek.
W tym artykule przyjrzymy się, jak Devise, klejnot Ruby, robi to tak elegancko dla aplikacji Rails. Devise to elastyczna biblioteka uwierzytelniania oparta na Warden, która implementuje uwierzytelnianie, rejestrację, logowanie i przechowywanie danych dla wielu dostawców logowania. Jeśli jesteś bardziej front-endowym facetem i chcesz sprawdzić coś podobnego dla AngularJS, spójrz na ten artykuł.
Devise, podobnie jak większość bibliotek tej klasy, nie ma wbudowanej obsługi żadnego z wyżej wymienionych interfejsów API sieci społecznościowych. Wsparcie dla każdego z tych interfejsów API sieci społecznościowych jest zapewniane przez dodatkowe klejnoty. Następujące klejnoty są dostępne dla uwierzytelniania Rails, które obejmują 5 dostawców omówionych w tym artykule:
gem 'omniauth-facebook' gem 'omniauth-pinterest' gem 'omniauth-twitter' gem 'omniauth-google-oauth2' gem 'omniauth-instagram'
Ponieważ zapewniają one tylko uwierzytelnianie, rejestrację, logowanie i przechowywanie dla każdego z tych dostawców, będziemy również musieli uzyskać następujące klejnoty dla rzeczywistych klientów API:
gem 'twitter' # https://github.com/sferik/twitter gem 'instagram' # https://github.com/facebookarchive/instagram-ruby-gem gem 'koala' # (Facebook API) https://github.com/arsduo/koala gem 'google-api-client' # (YouTube API), https://github.com/google/google-api-ruby-client gem 'pinterest-api' # https://github.com/realadeel/pinterest-api
Omniauth i uwierzytelnianie
Aby użytkownik mógł autoryzować Twoją aplikację u Twojego dostawcy, możesz po prostu podać link z następującą ścieżką:
omniauth_authorize_path('user', :facebook) omniauth_authorize_path('user', :instagram) ...
Aby zareagować na wywołanie zwrotne po uwierzytelnieniu użytkownika, możesz zdefiniować OmniauthCallbacksController z zakresami jako funkcje takie jak:
class AuthenticationsController < Devise::OmniauthCallbacksController def facebook if request.env["omniauth.auth"] ... end end end
To jest miejsce na dodanie nowego modelu uwierzytelniania z tokenem i danymi do swojej aplikacji:
authentication = where(provider: omniauth.provider, user_id: user.id) .first_or_create do |auth| auth.user = user auth.uid = omniauth.uid auth.secret = omniauth.credentials.secret auth.token = omniauth.credentials.token ... end
Wykonywanie wywołań API
Oto przykład, jak używać Koala do wysyłania zapytań do interfejsu API Facebooka. Reszta dostawców działa mniej więcej podobnie i jest udokumentowana w README klejnotu.
W ten sposób uzyskujesz dane użytkownika za pomocą Koala:
authentication = user.authentication_for_provider(:facebook) token = authentication.token api = Koala::Facebook::API.new(token) results = api.get_object("me")
Następnie możesz użyć wyniku JSON zwróconego przez interfejs API. Kod źródłowy tej aplikacji demonstracyjnej jest dostępny na GitHub.
Zakończyć
Interfejsy API sieci społecznościowych zapewniają potężne narzędzie do wysyłania zapytań do dużego zestawu danych sieci społecznościowych i zbierania dużych zbiorów danych dla Twojej aplikacji. Możesz zbudować usługę na podstawie tych interfejsów API lub użyć ich do ulepszenia własnych informacji o aplikacjach i użytkownikach.
Railsy i dostępne klejnoty ułatwiają integrację tych interfejsów API z Twoją aplikacją railsową i wysyłanie zapytań do interfejsów za pomocą warstwy abstrakcji między Twoją aplikacją a interfejsem API.