Загрузка в определенный альбом фан-страницы без пользовательских разрешений

#facebook #photo #facebook-page

#Facebook #фото #facebook-страница

Вопрос:

Я пытаюсь воспроизвести ту же функциональность, которую кто-то уже реализовал на этой странице здесь: http://www.facebook.com/PowerPhotoUploader?sk=app_152884604799537 я не беспокоюсь о принудительной части, подобной fangate, могу сделать это без проблем. Мне нужно добиться этого, не запрашивая никаких пользовательских настроек так же, как у них

Я подобрался близко, но пока не совсем правильно. На этой странице создан тестовый альбом: http://www.facebook.com/pages/Demo-Album-Upload/227979503931257?sk=app_153866511376478

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

Код пока:

 <?php
$app_id = "XXXXXXXXXXX";
$app_secret = "XXXXXXXXXXXX";
require 'facebook.php';
$facebook = new Facebook(array( 'appId' => $app_id, 'secret' => $app_secret, 'cookie' => true, 'fileUpload' => true,));
$signed_request = $facebook->getSignedRequest();
//print_r ($signed_request);
$page_id         = $signed_request["page"]["id"];
//Upload To Page Album 
$facebook->setFileUploadSupport(true);
$album_id ='59125';  
$file_path  ='image2.gif';
$args = array('message' => 'Photo Caption');
$args['image'] = '@' . realpath($file_path);
$data = $facebook->api('/'.$album_id.'/photos', 'post', $args);
print_r($data);
?>
  

Я уже прочитал много материалов форума, установил filuploadsupport, установил для загрузки файлов значение true, но большая часть информации, которую я могу найти до сих пор, требует perms amp; access token, однако приведенный выше пример не позволил добиться ни того, ни другого — есть мысли?

С уважением, Тони

Ответ №1:

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

Самый простой способ получить токен доступа, который вы можете использовать, — это вручную предоставить приложению разрешения manage_pages и offline_access для вашей учетной записи. Затем просто возьмите токен доступа для своей учетной записи и используйте его для всех звонков.

Комментарии:

1. Привет, jtymann, большое спасибо за это, после множества проб и ошибок, наконец, понял это, поскольку администратор установил индекс для запроса на управление страницами и в автономном режиме, затем получил токен доступа как пользователь, затем получил токен доступа к странице для этой конкретной страницы и жестко закодировал его на странице вкладок — большое спасибо, теперь работает. При использовании этого метода мне когда-нибудь понадобится снова получить токен доступа к странице, т.Е. Истечет ли его срок действия или автономный доступ гарантирует, что он останется бесконечным?

2. Тони, рад слышать, что у тебя все получилось. В соответствии с истекающим сроком действия токенов доступа, токены доступа, которым был предоставлен автономный доступ, истекают только в том случае, если вы удалите приложение или измените свой пароль.

3. Привет, jtymann, теперь загрузка фотографий работает правильно и переходит к правильному альбому, теперь я столкнулся с новой проблемой и не уверен, что с этим делать. После завершения загрузки graph, похоже, просто автоматически печатает JSON-ответ идентификатора фотографии непосредственно в браузере и не может найти способа контролировать его вывод. страница / приложение, над которым я работал, находится здесь: facebook.com/pages/Demo-Frank-by-OCBC/… Любые идеи, которые больше всего ценятся, о том, как контролировать возвращаемый ответ