使用应用程序的名称在用户的墙上发布

时间:2011-07-27 10:51:45

标签: php facebook facebook-graph-api

我正在使用Facebook GRAPH API在用户的墙上发布。

它工作正常,但我遇到了一个小问题:

我的出版物以用户的名字显示在用户的墙上,就像他自己发布一样

我想在他的墙上发布,但是我的应用名称是

我该怎么做?

3 个答案:

答案 0 :(得分:0)

首先,您需要用户后期权限。获得用户凭证后,您可以尝试使用类似

的结构发送$ _POST
$stream_data = array(
                    'access_token' => $user_access_token,
                    'caption'      => 'From Your App',
                    'description'  => 'Your App description',
                    'link'         => 'http://yourapp.com',
                    'picture'      => 'http://yourapp.com/assets/img/someicon.png',
                    'name'         => $user_sess_name.' just started uses Your App name.',
                );

https://graph.facebook.com/1234/feed(1234是用户ID)以创建Feed流。

答案 1 :(得分:0)

无法在用户的墙上发布并将其归因于应用程序本身,只有用户可以在彼此的墙上书写,应用程序或页面无法在个人资料的墙上书写。 toopay的答案是从应用程序发布到用户墙上的一个很好的例子,但该帖子将归因于您使用其访问令牌的用户

答案 2 :(得分:0)

我不这么认为你可以使用应用名称发布在用户的墙上,你可以使用下面的代码在用户墙上发布,它会在底部威盛应用名称

$fb = new Facebook(array(
  'appId'  => '2420527xxxxxxx',
  'secret' => 'a6b14d618xxxxxxxxxxxxxxxxxxx'
));

try {
     $attachment = array(
       'message' => '',
       'access_token' => $fb->getAccessToken(),
       'name' => 'Attachment Name',
       'caption' => 'Attachment Caption',   
       'link' => 'http://www.xxxxxxx.com/app/',
       'description' => 'Description .....',
       'picture' => 'http://www.xxxxxxx.com/logo.xxx',
       'actions' => array(array('name' => 'Action Text','link' =>'http://www.xxx.com/app/'))
      );
$result = $fb->api('/'.$fb->getAppId().'/feed/', 'post', $attachment);  
    echo $result;
    }catch (FacebookApiException $e) {
   echo $e->getMessage()."\n";
}   

试试吧.. !!!