Я могу обновить статус на моей стене PROFILE, используя этот код:
require_once 'facebook-platform/php/facebook.php'; $facebook = new Facebook('APP API KEY','APP SECRET KEY'); $user_id = 'MY USER ID'; $facebook->api_client->users_setStatus('This is a new status');
… после авторизации с использованием этого адреса: http://facebook.com/authorize.php?api_key=MYAPPAPIKEY&v=1.0&ext_perm=publish_stream
Этот код, однако, не работает, чтобы обновить статус на моей странице PAGE Wall. Существуют ли дополнительные параметры, которые я могу добавить в ur Authorize.php, чтобы указать авторизацию PAGE, а не только мой профиль?
Или, есть ли лучшие способы опубликовать обновления на стенах Стены вентилятора?
Благодаря!
Я решил проблему, обратившись к документации на настольные приложения Facebook (даже если это веб-приложение).
Сначала мне пришлось разрешить автономный доступ с помощью этого url (заменяя «MYAPIKEY»): http://www.facebook.com/login.php?api_key=MYAPIKEY&connect_display=popup&v=1.0&next=http://www.facebook.com/ подключить / login_success.html & cancel_url = HTTP: //www.facebook.com/connect/login_failure.html&fbconnect=true&return_session=true&session_key_only=true&req_perms=read_stream,publish_stream,offline_access
Затем мне нужно было предоставить разрешения «publish_stream» на PAGE с этим URL (заменяя «MYAPIKEY» и «THEPAGEID»): http://www.facebook.com/connect/prompt_permissions.php?api_key=MYAPIKEY&v=1.0&next= http://www.facebook.com/connect/login_success.html?xxRESULTTOKENxx&display=popup&ext_perm=publish_stream&enable_profile_selector=1&profile_selector_ids=THEPAGEID
Затем я мог бы использовать следующий код для публикации на стене страницы вентилятора:
require_once 'facebook-platform/php/facebook.php'; $facebook = new Facebook(MYAPIKEY, MYAPISECRET); try{ $facebook->api_client->stream_publish('INSERT_STATUS_HERE',null,null,null,'THEPAGEID'); }catch(Exception $o ){ print_r($o); }
Исходя из вышесказанного, я опробовал пару параметров запроса на URL-адресе API API-интерфейса графика, и, похоже, это работает:
EDIT: неважно, приведенное выше отображает весь пользовательский интерфейс правильно, но все равно получите «(# 200). Пользователь не разрешил приложению выполнять это действие« ошибка — ясно, что это не работает, потому что токен доступа содержит мой идентификатор пользователя, но не идентификатор страницы.