Uzyskanie pełnowymiarowego zdjęcia profilowego

Czy jest w ogóle, aby uzyskać pełnowymiarowe zdjęcie profilowe za pomocą dowolnego interfejsu API facebook?

Http://graph.facebook.com/{ID} / picture? type=large is way to small.

Dzięki:)

Author: Richard, 2011-12-20

7 answers

Myślę, że używam najprostszej metody, aby uzyskać pełne zdjęcie profilowe. Możesz uzyskać pełne zdjęcie profilowe lub sam możesz ustawić wymiar zdjęcia profilowego:

$facebook->api(me?fields=picture.width(800).height(800))

Możesz ustawić width i height zgodnie z potrzebami. Chociaż Facebook nie zwraca dokładnego rozmiaru, o który poproszono, zwraca najbliższy dostępny z nimi obraz wymiaru.

 78
Author: Smita,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-21 08:15:46

Ustaw szerokość lub wysokość na dowolnie dużą liczbę:

https://graph.facebook.com/username_or_id/picture?width=9999

Jeśli szerokość i wysokość są takie same, zdjęcie jest przycięte do kwadratu.

 120
Author: user495470,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-22 13:16:12

Znalazłem sposób:

$albums = $facebook->api('/' . $user_id . '/albums');
foreach($albums['data'] as $album){
    if ($album['name'] == "Profile Pictures"){
        $photos = $facebook->api('/' . $album['id'] . '/photos');
        $profile_pic = $photos['data'][0]['source'];
        break;
    }
}
 6
Author: Richard,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-13 05:30:13

Jak wspomniano powyżej, wygląda na to, że zdjęcie okładki albumu profilowego jest obrazem profilowym wysokiej rozdzielczości. Chciałbym sprawdzić typu albumu "profil", a nie nazwę, choć, jak nazwa może nie być spójna w różnych językach, Ale Typ powinien być.

Aby zmniejszyć liczbę żądań / parsowania, możesz użyć tego fql: "select cover_object_id from album where type = 'profile' and owner = user_id "

A następnie można skonstruować adres URL obrazka z: "https://graph.facebook.com/" + cover_object_id + "/picture&type=normal&access_token= " + access_token

Wygląda na to, że nie ma "dużego" typu dla tego obrazu, ale "normalny" jest nadal dość duży.

Jak wspomniano powyżej, to zdjęcie może być mniej dostępne niż publiczne zdjęcie profilowe. Aby uzyskać do niego dostęp, potrzebujesz uprawnień user_photos lub friend_photos.

 4
Author: David Kinghorn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-26 21:38:59

Możesz używać narzędzi programistycznych, takich jak firebug w Firefoksie. Kliknij prawym przyciskiem myszy obraz i sprawdź element za pomocą firebug.

Otrzymasz adres URL, z którego facebook pobiera obraz. Znajdziesz tam taki URL

Http://profile.ak.fbcdn.net/hprofile-ak-snc7/c160.2.762.762/s160x160/297962_1190xxxxx203889_104xxxxx723_n.jpg

Umieściłem kilka celowo umieścić "x" w linku ze względów prywatności.

Aby zobaczyć obraz w pełnej rozdzielczości otwórz Nowa karta i otwórz ten adres url:

Http://sphotos-e.ak.fbcdn.net/hphotos-ak-snc6/"297962_1190xxxxx203889_104xxxxx723_n.jpg"

Jak widać, dokładną nazwę obrazka umieściłem po ' / '

Usuń cytaty i otwórz link. Otrzymasz pełny rozmiar obrazu.

 2
Author: nikoo28,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-28 13:47:58

Z Javascript można uzyskać pełnowymiarowe zdjęcia profilowe, takie jak to

Przekaż swoje accessToken do funkcji getface() z twojego FB.init wywołania

function getface(accessToken){
  FB.api('/me/friends', function (response) {
    for (id in response.data) { 
        var homie=response.data[id].id         
        FB.api(homie+'/albums?access_token='+accessToken, function (aresponse) {
          for (album in aresponse.data) {
            if (aresponse.data[album].name == "Profile Pictures") {                      
              FB.api(aresponse.data[album].id + "/photos", function(aresponse) {
                console.log(aresponse.data[0].images[0].source); 
              });                  
            }
          }   
        });
    }
  });
}
 2
Author: Kristian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-13 05:32:26

Zdjęcia profilowe są skalowane w dół do 125x125 na Facebook sever po ich przesłaniu, więc z tego co wiem, nie można uzyskać zdjęcia większe niż to. Jak duży jest Twój obraz?

 -8
Author: ACarter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-12-20 11:39:34