我想用网站预览创建帖子

时间:2013-04-29 19:40:55

标签: facebook facebook-graph-api preview

我想创建一个包含网站预览的帖子。它必须与截图相似。

enter image description here

如何使用网络预览创建帖子?我想在页面上添加它。

NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"Post with web preview",  @"message", nil];
[FBRequestConnection startWithGraphPath:[NSString stringWithFormat:@"%@/feed", myself.pageID]
                                     parameters:dict HTTPMethod:@"POST" completionHandler:nil];   

2 个答案:

答案 0 :(得分:2)

有关发布链接的更多信息(您所谓的“发布网站预览”): http://developers.facebook.com/docs/reference/api/link/

我认为你的Facebook APP拥有你的权限,并且你正在使用PHP-sdk类。无论如何,任何语言的过程都是一样的,只是改变你写的方式。此外,您需要具有适当权限集的用户访问令牌。

使用Facebook的PHP-sdk,流程为:

// Load FB class, and init it
require_once("facebook.php");

$config = array();
$config['appId'] = 'YOUR_APP_ID';
$config['secret'] = 'YOUR_APP_SECRET';

$facebook = new Facebook($config);

// You set the User Access Token (you need to have it previously to this: Because you 
// requested before, or because you obtain it from Facebook)
$facebook->setAccessToken( $user_access_token );

try {
  // Set the link params:      
  if ( isset($config['link']) ) { 
     $args = array(
       'link'        => $link_url          //Url to be linked
     , 'name'        => $link_titulo       //Box title
     , 'description' => $link_descripcion  //Box Description
     , 'picture'     => $link_foto         //Photo to be posted
     , 'message'     => $link_message      //Message over the "link box"
     );

     // Post in the User/FB_Page wall
     $facebook->api('/me/feed', 'post', $args);
  }
} catch (FacebookApiException $e) {
     $fbError = $e->getResult();

  $result = array(
    'tipo'   => 'error'
  , 'code'   => $fbError['error']['code']
  , 'text'   => $fbError['error']['message']
  );

  print_r($result);
}

更新

在阅读了我的评论答案后,我认为你正在寻找CSS和布局。你可以找到一些东西来实现这里的帖子格式:

http://jsfiddle.net/5NYD5/3/

答案 1 :(得分:1)

这可以通过多种方式完成,

如果你使用的是facebook API,那就很容易了,就像在FB上一样(图像会被自动提取)

Dim fb As FacebookClient = New FacebookClient('access_token')

Dim args As Dictionary(Of String, Object) = New Dictionary(Of String, Object)()

args("message") = "Your Message to be posted"
args("link") = "http://www.example.com"

fb.Post("/me/feed", args)

我希望这样做,

否则,如果您没有使用FB API,那么手动获取图像或创建快照的相对较长的方法。就像搜索引擎爬虫在进入网站后爬行一样。它很漫长但是可能。