Załóżmy, że dwóch użytkowników korzysta z aplikacji i przyznało jej odpowiednie uprawnienia do odzyskiwania swoich upodobań. Czy jest możliwe, aby za pomocą FQL lub api z wykresu znaleźć to, co mają ze sobą wspólnego? Podobny do tego, w jaki sposób można znaleźć wzajemne relacje między dwoma użytkownikami za pomocą interfejsu graficznego. Nie sądzę, że takie połączenie api istnieje, ponieważ przeszedłem przez dokumenty, ale mogłem to przegapić. Chciałbym wiedzieć, czy to możliwe, a jeśli tak, to jak można to zrobić. Naprawdę cuchnę SQL i zacząłem od FQL i mogę uzyskać wszystkie lubiane rzeczy od jednego użytkownika, ale jak uzyskać tylko wspólne polubienia między dwoma użytkownikami (jeśli w ogóle możliwe)?Jak uzyskać wzajemne polubienia Facebooka między użytkownikami, którzy korzystają z aplikacji
6
A
Odpowiedz
3
Można to osiągnąć za pomocą FQL.
1) Wybierz strony z obsługą 1
SELECT page_id FROM page_fan WHERE uid = $user1
2) Wybierz strony użytkownika 2 i użyj page_id jest z poprzedniej kwerendy jako inny filtr (aka - kwerendy sub)
Co daje ostateczne kompletne zapytanie, które to umożliwia:
SELECT page_id FROM page_fan WHERE uid= $user2 AND page_id IN (SELECT page_id FROM page_fan WHERE uid = $user1)
0
FQL nie jest już dostępny. Możesz to zrobić za pomocą interfejsu API wykresu z Facebooka. Coś takiego:
graph.setAccessToken(user.facebookToken);
graph.get("/"+targetFacebookId+"?fields=context", null, function(err, result) {
if (err) {
notDoStuff(err);
} else {
doStuff(result);
}
});
Niesamowite, wielkie dzięki. Wyjaśnienie było szczególnie cenne. – landland
Cześć Tommy, po zabawie z tym trochę nie działa i zwraca pusty zestaw danych. Aby przetestować, użyłem dwóch użytkowników i wybrałem SELECT page_id FROM page_fan WHERE uid = $ user1, a następnie SELECT page_id FROM page_fan WHERE uid = $ user2. Oba zawierają wspólny identyfikator strony, ponieważ dwukrotnie sprawdzam. Jednak gdy połączę instrukcję z twojego przykładu używając SELECT id_strony od page_fan WHERE uid = $ user2 I page_id IN (SELECT id_strony FROM page_fan WHERE uid = $ user1) zwrócone dane są puste. Wykorzystuje to narzędzie FQL Query z Facebooka. Jakieś pomysły? – landland
Logicznie, zapytanie działa. Więc nie wiem, czy jest jakiś problem z czasem lub czym. Spróbuj to zrobić, uruchamiając wiele zapytań i zobacz, co otrzymasz: https://developers.facebook.com/docs/reference/rest/fql.multiquery/ –