繁体   English   中英

Facebook api墙上的帖子在php中

[英]Facebook api wall post in php

我尝试下面的代码不工作

$attachment = array('message' => 'some meesgae', 'name' => 'This is my demo Facebook application!', 'caption' => "Caption of the Post", 'link' => 'http://mylink.com', 'description' => 'this is a description', 'picture' => 'http://mysite.com/pic.gif', 'actions' => array(array('name' => 'Get Search',     'link' => 'http://www.google.com')) );


$result = $facebook->api('/me/feed/','post',$attachment);

我给了扩展权限“publish_stream”

 $loginUrl = $facebook->getLoginUrl(array('req_perms' => 'email,user_birthday,status_update,publish_stream'));

BeRecursive对于动作链接是正确的,但是$ facebook-api函数为你做了json编码,你也可以发送“cb”这是一个回调函数。

您需要对附件进行JSON编码:

$attachment = json_encode($attachment);

此外,Graph Api不支持action_links,仅支持以下参数:

message      The message 
picture      If available, a link to the picture included with this post 
link            The link attached to this post 
name            The name of the link 
caption      The caption of the link (appears beneath the link name) 
description  A description of the link (appears beneath the link caption) 
source        If available, the source link attached to this post (for example, a flash or video file)

截至今天,这是Facebook在http://developers.facebook.com/docs/reference/php/facebook-api/上发布的内容

<?
  // Remember to copy files from the SDK's src/ directory to a
  // directory in your application on the server, such as php-sdk/
  require_once('php-sdk/facebook.php');

  $config = array(
    'appId' => 'YOUR_APP_ID',
    'secret' => 'YOUR_APP_SECRET',
  );

  $facebook = new Facebook($config);
  $user_id = $facebook->getUser();
?>
<html>
  <head></head>
  <body>

  <?
    if($user_id) {

      // We have a user ID, so probably a logged in user.
      // If not, we'll get an exception, which we handle below.
      try {
        $ret_obj = $facebook->api('/me/feed', 'POST',
                                    array(
                                      'link' => 'www.example.com',
                                      'message' => 'Posting with the PHP SDK!'
                                 ));
        echo '<pre>Post ID: ' . $ret_obj['id'] . '</pre>';

      } catch(FacebookApiException $e) {
        // If the user is logged out, you can have a 
        // user ID even though the access token is invalid.
        // In this case, we'll get an exception, so we'll
        // just ask the user to login again here.
        $login_url = $facebook->getLoginUrl( array(
                       'scope' => 'publish_stream'
                       )); 
        echo 'Please <a href="' . $login_url . '">login.</a>';
        error_log($e->getType());
        error_log($e->getMessage());
      }   
      // Give the user a logout link 
      echo '<br /><a href="' . $facebook->getLogoutUrl() . '">logout</a>';
    } else {

      // No user, so print a link for the user to login
      // To post to a user's wall, we need publish_stream permission
      // We'll use the current URL as the redirect_uri, so we don't
      // need to specify it here.
      $login_url = $facebook->getLoginUrl( array( 'scope' => 'publish_stream' ) );
      echo 'Please <a href="' . $login_url . '">login.</a>';

    } 

  ?>      

  </body> 
</html>  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM