打开图表:如何创建自定义对象并将自定义操作与它们相关联?

时间:2012-07-21 05:05:02

标签: facebook-graph-api object opengraph facebook-opengraph

我正在尝试创建自定义对象(objnew)并尝试将操作与其关联(actnew)。一切都很好,直到现在。

现在,我必须编写代码,我必须创建objnew类型的对象以及相关的操作。

如何创建对象?我得到了示例代码将其发布到Facebook:

curl -F 'access_token=XXXXXXXXXXXXXX' \
 -F 'newobj=http://samples.ogp.me/467564296596508' \
    'https://graph.facebook.com/me/myapp:newact'

现在这个newobj是一个参考。如何创建并获取URL?

2 个答案:

答案 0 :(得分:3)

请注意以下编辑!

  

现在,我想添加用户在发布故事时可以参考的多个食谱。我怎么能用API做到这一点?

使用API​​。

Open Graph对象基本上只是指向具有相应OG元标记集的网页的URL。

所以只需在您的网站上设置这些网址 - 您可以手动执行此操作,如果您愿意,或者使其成为数据库驱动的网站,其中只有URL中的参数可让您的脚本从某些表中提取相应的数据并使用该数据填充OG元标记。

然后,在发布操作时,您只需将那些对象之一的URL作为参数 - Facebook完成其余操作,它“抓取”URL并从那里提取数据。 / p>

你现在使用http://samples.ogp.me/467564296596508的方式 - 好吧,就像网址基本上只是针对 samples 一样。发布“真实”操作时,对象也应该是真正的对象 - 也就是说,网站上的对象指向您网站的网址。

并使用Facebook Debugger检查您的对象(并修复它可能发现的任何问题) - 这有助于防止您作为初学者遇到的问题。


编辑:自从我最初写这篇文章以来,情况发生了变化 - Facebook现在允许您通过API创建对象,这些对象可以属于您的应用或特定用户。

有关完整文档,请参阅:https://developers.facebook.com/docs/sharing/opengraph/object-api

答案 1 :(得分:0)

如果你想在你的网站上托管你的故事内容并让Facebook刮刀创建该对象,那么做CBroe的建议会很有效。

我只想补充一点,通过调用图形API来创建它们,可以让Facebook托管您的对象。请注意,这将为调用api的Facebook用户创建活动日志条目。

以下是如何使用api创建对象的示例(在javascrip中)

FB.api(
  'me/objects/yourappdomain:objectypename',
  'post',
  {
    og:title: title,
    og:type: yourappdomain:objectypename,
    yourappdomain:customobjectpropertyname: propertyvalue,
  },
  function(response) {
    // save the created object's id returned as you will need to specify it when creating your storie's action
  }
);

要获取显示如何为自定义对象类型执行此操作的示例代码,请转到应用的Facebook开发人员页面。点击Open Graph - >对象类型 - >获取代码(在您要创建的对象类型旁边)。

See Using Objects on Facebook Developer