我可以使用以下代码更新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&extra_perm = publication_stream
但是,此代码无法更新我的Facebook PAGE Wall上的状态.是否有其他参数可以添加到authorize.php网址以指定授权PAGE而不仅仅是我的个人资料?
或者,有没有更好的方法来发布粉丝页墙的更新?
谢谢!
我通过查阅Facebook桌面应用程序文档解决了这个问题(尽管这是一个Web应用程序).
我首先必须使用此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
然后,我需要使用此url(替换'MYAPIKEY'和'THEPAGEID')向PAGE授予'publish_stream'权限: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); }