2012-08-02 2 views
1

나는이 문제와 관련하여 너무 많은 시간을 보냈으며이 문제에 관해서는 모두 읽을 수 있지만 아직 답변은 없습니다.Facebook 앱이 fanpage 벽에 메시지를 게시 할 수 있지만 이미지를 업로드 할 수 없습니다.

나는 페이스 북의 응용 프로그램 및 그래프 API를 사용하여 페이스 북 페이지 벽에 이미지를 게시하려고 해요 : 나는 '/ 사진'을 교체 할 때이 코드는 정말 (페이지 벽에 메시지를 게시합니다

<?php 

$facebook = new Facebook(array(
      'appId' => $this->settings['app_id'], 
      'secret' => $this->settings['app_secret'], 
      'fileUpload' => true, 
)); 
$facebook->destroySession(); 
$filename = dirname(__FILE__) . '/upset.jpg'; 
$args = array(
    'message' => 'Test', 
    'image' => '@' . realpath($filename), 
    'access_token' => $this->settings['user_access_token'], 
); 
try { 
    $result = $facebook->api($this->settings['fanpage_id'] . '/photos', 
     'post', $args); 
    var_dump($result); 
} 
catch(Exception $e) { 
    echo $e->getType() . "\n" . $e->getMessage() . "\n"; 
} 

을 '/ feed'와 함께), 정말로 $ this-> settings [ 'fanpage_id']를 $ user_id로 바꾼다면 페이지 벽에 사진이 아닌 USER 벽에 사진을 게시합니다.

이미지를 업로드하지만 $ 결과에는 업로드 된 이미지의 ID가 포함되어 있으며 페이스 북에서는 볼 수 있지만 페이지의 앨범에서는 보이지 않지만 사용자의 것으로 볼 수 있습니다.

P./accounts에 대한 호출로 페이지 액세스 토큰을 얻으려고했습니다. 동일한 결과입니다. P.P.S. 사용자 액세스 토큰은 manage_pages, photo_upload 및 기타 권한 (실제로는 오프라인 액세스를 제외한 모든 계정)을 가지고 있습니다.

답변

2

현재 로그인 페이스 북 사용자의 액세스 권한을 사용하는 것처럼 보이므로 manage_pages 확장 권한을 부여 받아야합니다 팬 페이지 벽에 이미지를 게시 할 수 있어야합니다.

편집 :

확장 권한 설명서는 여기 https://developers.facebook.com/docs/authentication/permissions/#page_perms 다음 http://thinkdiff.net/facebook/php-sdk-3-0-graph-api-base-facebook-connect-tutorial/

+0

나는 앱에 manage_pages를 부여해야합니다. 맞습니까? 그걸 확인하는 방법과 실제적으로 이러한 권리를주는 방법을 몇 마디로 말해 줄 수 있습니까? 나는 잘 모르겠다. – Andrey

+0

예, 답안을 업데이트하고 참고 자료를 추가했습니다. 그들을 확인하고 도움이되는지 확인하십시오. –

+0

manage_pages 및 "사진"으로 "피드"를 변경하는 것이 중요했습니다. 고맙습니다. – dlopezgonzalez

-1

가 해결 될 것으로 보인다 확장 된 권한을 가진 사용자 로그인을 가져 오는 방법을 보여줍니다 사용할 수있는 튜토리얼입니다. 사용자 대신 페이지 액세스 토큰을 사용해야 할 필요가 있습니다. 또한 "no_story '=> 1"매개 변수가 필요하지 않습니다.

관련 문제