2016-09-09 5 views
-1

다음 간단한 코드를 사용하여 URL에서 내 localhost/server로 이미지를 복사합니다. 그러나 Facebook Graph API와 함께 사용하면 작동하지 않습니다. 예를 들어 :Graph API URL에서 Facebook 프로필 사진 복사

$url="http://graph.facebook.com/4/picture?type=large"; 
copy($url,"newImageName.jpg"); 

주 : 오류가 표시되지 않았다. 이미지가 업로드되지 않습니다.

이 문제를 어떻게 해결할 수 있습니까?

+0

"작동하지 않는다"는 의미는 무엇입니까? 더 구체적으로 말하십시오. 오류 로그는 어때요? 어떻게 사용자 ID를 얻었습니까? 앱 범위의 ID입니까? – luschn

+0

@ luschn 다시 질문을 보면서 편집 해 봤습니다. 사용자 ID를 얻는 것은 Facebook Graph API에 달려 있습니다. 위의 URL을 사용하면 주커 버그 이미지가 표시되지만 서버에 복사 할 수는 없습니다 (여기에 문제가 있음). 이 코드는 다른 직접 이미지의 URL (예 : http://example.com/img.jpg)과 잘 작동합니다. – weblover

+0

@ luschn 이전 답변 중 하나를 찾았습니다. 감사합니다. – weblover

답변

0

해결책은 @luschn@Joe 답으로 나타났습니다. 둘 다 감사합니다.

$arrContextOptions=array(
"ssl"=>array(
"verify_peer"=>false, 
"verify_peer_name"=>false, 
), 
); 
$url="http://graph.facebook.com/userID/picture?type=large"; 
$data=file_get_contents($url, false, stream_context_create($arrContextOptions)); 
$fileName = 'fb_profilepic.jpg'; 
$file = fopen($fileName, 'w+'); 
fputs($file, $data); 
fclose($file);