Как мне получить доступ к профилю пользователя Facebook на PHP? - PullRequest
0 голосов
/ 03 декабря 2011

Я занимаюсь разработкой приложения, которое будет использовать изображение профиля пользователя.Я пытаюсь сохранить изображение профиля пользователя на моем сервере для манипуляций.

Когда я использую https://graph.facebook.com/[uid]/picture?type=large, он не будет работать, потому что существует какое-то перенаправление , которое Facebook делал раньшеобслуживающий рис.

Может кто-нибудь помочь мне с этим вопросом?Я использую PHP.

Ответы [ 3 ]

0 голосов
/ 03 декабря 2011
<?php
# You can do:

$userid = SOMEID;

$piclink = 'https://graph.facebook.com/'.$userid.'/picture?type=';

#then a option to choose the type, 
#there is the small, normal, square and large type.
#So lets say you choose the large size:

$pictype = 'large';

$userpicture = $piclink . pictype;

# ----------------------------------
# Now that we have a picture link you can do various stuff like:

echo '<img src="';
echo $userpicture;    # This will output the updated user picture with no problem
echo '" />';          

?>

Теперь, если вы хотите сохранить изображение в базе данных, посмотрите это

http://www.phpriot.com/articles/images-in-mysql

Затем при сохранении изображения используйте этот $ userpicture, чтобы получить его.

0 голосов
/ 04 декабря 2011

Если я правильно понимаю вашу проблему, вы, вероятно, используете file_get_contents для извлечения изображения, но вы просто получаете текстовый ответ обратно, поскольку file_get_contents не следует автоматически за перенаправлением, содержащимся в текстовом ответе?

Быстрый-и грязное решение состоит в том, чтобы проанализировать текстовый ответ самостоятельно, чтобы найти URL фактического изображения:

@file_get_contents('https://graph.facebook.com/'.$userid.'/picture?type=large');
foreach ($http_response_header as $rh) if (substr($rh, 0, 10)=='Location: ') $imgurl=substr($rh, 10);

Тогда у вас должен быть фактический URL изображения, который вы можете обработать при необходимости.

0 голосов
/ 03 декабря 2011

Вы можете использовать API-интерфейс graph для получения прямого URL-адреса для изображения профиля пользователя.https://graph.facebook.com/{user_id}/picture

...