2010-04-22 20 views
14

Powinienem był poprosić o to na forum programistów Facebook zamiast tego, ale jakoś nie mogę zarejestrować się na forum i funkcja połączenia z Facebookiem nie działa w momencie pisania tego .Wybierz Graph API lub stary REST API dla aplikacji Facebooka

W każdym razie nadal jestem zdezorientowany, czy używać Graph API, czy starego interfejsu REST API dla mojej aplikacji na Facebooku. Ogólnie to chcę osiągnąć w mojej aplikacji:

  1. Uzyskaj zdjęcie profilowe i nazwę użytkownika.
  2. Pobierz zdjęcie profilowe i nazwę znajomych użytkownika, którzy również używają mojej aplikacji.
  3. Publikuj w strumieniu użytkownika.
  4. Umożliwia użytkownikom zapraszanie znajomych do korzystania z aplikacji.

Czy ktoś może mi zapewnić wgląd, który z nich jest lepszy w przypadku mojego wniosku?

+0

wcielając się w screencasty, główny programista zasugerował użycie wykresu, ale są jasne rzeczy, których nie można osiągnąć za pomocą wykresu. Nie wiem, czy Connect.registerUsers jest obsługiwana. – timpone

+0

Cieszę się, że ktoś inny ma problemy z forami deweloperskimi Facebooka. – Nicole

+1

@Renesis: właściwie wszyscy mają problemy z forami FB ;-) – zerkms

Odpowiedz

5
  1. Uzyskaj zdjęcie profilowe i nazwę użytkownika.
    • http://graph.facebook.com/[uid] za nazwę i http://graph.facebook.com/[uid]/picture to zawsze aktualne łącze do bieżącego zdjęcia. Ponadto, jeśli masz parametr access_token, możesz wysłać zapytanie http://graph.facebook.com/me o dane bieżącego użytkownika, niezależnie od tego, kto to jest.
  2. Pobierz zdjęcie profilowe i nazwę znajomych użytkownika, którzy również używają mojej aplikacji.
    • Nie wiem, jak zdobyć konkretnych znajomych, może używając FQL. Należy jednak pamiętać, że można uzyskać konkretne pola w liście znajomych (domyślnie tylko nazwy i id) poprzez dodanie parametru fields: .../friends?fields=id,name,picture
  3. Posta do strumienia użytkownika.
  4. Pozwól użytkownikom zaprosić swoich znajomych do korzystania z aplikacji.
    • Niestety, nie wiem, na ten jeden ...
+0

Wygląda dobrze. Dla punktu numer 4, myślę, że mogę to osiągnąć za pomocą widżetu FBML. Dzięki ! – Andree

+0

Gdzie to znalazłeś w dokumentacji? Zastanawiałem się, czy jest możliwe, aby lista przyjaciół została posortowana na konkretnym polu. – Luke

2

Użyj interfejsu Graph API, ponieważ zawiera on wszystko, co miał stary interfejs REST API. Plus Nowy interfejs API jest RESTful, a wyniki są zwracane w JSON, co jest dobre!

+0

Plus - bardziej przyjazny TOS; Minus - prośba o przedłużenie uprawnień dla każdego nowego rodzaju danych ;-) – zerkms

7

Jak powiedział RENESIS, Graph API obejmuje dokładnie to, czego potrzebujemy w ciągu pierwszych trzech krokach.

Na czwartym miejscu, byłem patrząc na szeroko API dla moich własnych aplikacji i odkryli, w jaki sposób to zrobić za pośrednictwem FBML z następującego kodu:

<fb:serverFbml> 
<script type="text/fbml"> 
<fb:fbml> 
    <fb:request-form 
     method='POST' 
     type='join my Smiley group' 
     content='Would you like to join my Smiley group? 
      <fb:req-choice url="http://apps.facebook.com/smiley/yes.php" 
       label="Yes" />' 
      <fb:req-choice url="http://apps.facebook.com/smiley/no.php" 
       label="No" />' 
     <fb:multi-friend-selector 
      actiontext="Invite your friends to join your Smiley group."> 
    </fb:request-form> 
</fb:fbml> 
</script> 
</fb:serverFbml> 

http://developers.facebook.com/docs/guides/canvas/#requests

It Wygląda na to, że Scott jest niepoprawny, gdy mówi, że Graph zawiera wszystko, co zawiera stary interfejs REST API:

"Jesteśmy obecnie w trakcie procesu aktualizacja naszego podstawowego interfejsu API z starego interfejsu REST API do bardziej nowoczesnego interfejsu API Graph . Jednak większość metod wymaganych do zainstalowania na płótnie do wersji zintegrowanych z Facebookiem jeszcze nie została zaktualizowana do nowego interfejsu API. Na czas razie zalecamy kontynuować przy użyciu starego REST API w aplikacjach płótnie zamiast nowych API dla dobra kompletności „.

(mogę tylko pisać jedno hiperłącze, więc jest to taki sam jak hiperłącze #requests, ale w sekcji "Wykonywanie połączeń API")

Nie jestem pewien, czy ma to miejsce w przypadku innych metod integracji, takich jak aplikacje internetowe lub desktopowe, ale jak na razie wygląda na to, że Graph API ma trochę nadrobienia zaległości!

Edytuj:

Do listy zdjęć profilowych znajomych użytkownika, należy użyć następujących:

Zakładając masz już bieżącego użytkownika identyfikator

https://graph.facebook.com/**USER-ID**/friends?fields=picture,name&access_token=**ACCESS-TOKEN** 

Zapewni to obiekt JSON z wykazem przyjaciele obecnego użytkownika, zawierający UID, nazwę i link do małej wersji zdjęcia profilowego.

nie znalazłem sposób, aby odzyskać dużą wersję obrazu w poszukiwaniu jeszcze tak z ta metoda, jeśli chcesz dużą wersję, trzeba wykonać iterację każdego użytkownika i korzystać z tego:

https://graph.facebook.com/**USER-ID**/picture?type=large 
+0

Jednak nadal nie znalazłem żadnego sposobu na spełnienie wymagania 2 w API wykresu (users.getAppUser). Czy masz jakieś propozycje? Obecnie używam starszego interfejsu API dla tej funkcji i interfejsu API wykresu dla pozostałych. – Andree

+0

Nie mogę dobrze sformatować komentarzy, nie jestem wystarczająco sprytny. Dokona edycji odpowiedzi – tonyhb

Powiązane problemy