응용 프로그램의 기본 앨범에있는 사용자의 페이스 북에 사진을 업로드하고 싶습니다. 여기에 게시 아래에 설명되어 있습니다 : http://developers.facebook.com/docs/reference/api/photoFacebook Graph API로 사진을 업로드 할 때 예외가 발생했습니다.
방법은 여기에 대답했습니다 : How can I upload photos to album using Facebook Graph API. 다음을 사용하고 있습니다 :
$args = array(
'message' => 'Photo Caption',
'image' => '@'.realpath("image.png")
);
$data = $facebook->api('/me/photos', 'post', $args);
그러나 이것을 시도하면 "(# 324) 파일 업로드 필요"예외가 발생합니다. 유효한 세션이 있고 publish_stream 및 user_photos 권한이 있습니다. API를 사용하여 데이터를 검색 할 수 있습니다. 이미지 파일은 file_get_contents(realpath("image.png"))
으로로드 될 수 있기 때문에 확실히 유효합니다.
나는 완벽하게 작동하는 컬을 사용하여,이 솔루션을 시도했다 :
: (동일한 $의 인수 및 $ URL을 사용하여)이 보이는 페이스 북의 PHP SDK 컬과 비교 Upload Photo To Album with Facebook's Graph API$args = array(
'message' => 'Photo from application',
'pic.png' => '@'.realpath('pic.png')
);
$tok = $session['access_token']
$url = 'http://graph.facebook.com/'.$album_id.'/photos?access_token='.$tok;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $args);
$data = curl_exec($ch);
$ch = curl_init();
$opts = self::$CURL_OPTS;
$opts[CURLOPT_POSTFIELDS] = http_build_query($args, null, '&');
$opts[CURLOPT_URL] = $url;
curl_setopt_array($ch, $opts);
$data= curl_exec($ch);
PHP 버전이 작동하지 않는 이유는 무엇입니까? http_build_query() 함수가 이미지 로딩을 방해하고있는 것 같습니다. 나는 여기서 무슨 일이 벌어지고 있는지 이해하기 위해 컬에 대해서 충분히 모른다.
덕분에 - 당신이 사용하는 경우, 사용자 생성 된 메시지가 의도하지 않은 또는 악성 파일 업로드를 만들 수 있다는 것을 인식 – Lobe
검색의 긴 시간 이후에 저를 저장했다. – peterjwest
감사! 사진 업로드에 관한 문서에서 이것이 현저하다고 생각할 것입니다. . . WTH !!! – TuK