Facebook Open Graph 发布带有对象的操作
Posted
技术标签:
【中文标题】Facebook Open Graph 发布带有对象的操作【英文标题】:Facebook Open Graph publish action with object 【发布时间】:2014-07-18 13:07:35 【问题描述】:我正在使用 Facebook Open Graph 发布故事,为此我使用了他们的 JS SDK。文档在这里:https://developers.facebook.com/docs/opengraph/overview
所以重点是为用户发布:John Smith 正在听 Shakira - Lalala on Mywebsite。
倾听是行动 夏奇拉是对象
JS 代码是:
FB.api(
'me/mynamespace:listen',
'post',
song: "http://mywebsite/shakiramusic"
,
function(response)
// handle the response
);
在这个页面中,一些其他的信息会用这样的代码来指定:
<meta property="og:title" content="Lalala" />
<meta property="og:image" content="wonderShakira.jpeg" />
但是,这是我的问题。想象一下,我想做一个像这样的故事: John Smith 正在阅读我网站上 BigBook 的第 542 页
页码是高度可变的,因此不能存储在元属性中,因为 Facebook 不会及时刷新它。
所以我想做这样的事情:
FB.api(
'me/mynamespace:reading',
'post',
object:
app_id: 1234567890,
type: "book",
url: "http://mywebsite/thebigbook
title: "The Big Book"
image: "bigbookcover.png",
description: "A super book",
** page_count:542 **
,
function(response)
// handle the response
);
但当然它不起作用,我得到一个错误。可能是我误解了自定义故事、动作和对象的原理......我希望我的问题很清楚,你能帮助我。
谢谢:)
【问题讨论】:
你能发布你得到的错误吗? 这是一个未知错误。代码 1。 您可能无法使用listen。 Facebook 目前不允许再提交music.listen。 developers.facebook.com/docs/opengraph/guides/music.listens 也许这就是你无法让它工作的原因 【参考方案1】:我得到了答案,这里是好的代码:
FB.api(
'me/mynamespace:reading',
'post',
book:
app_id: 1234567890,
type: "book",
title: "The Big Book"
image: "bigbookcover.png",
description: "A super book",
url: "http://mywebsite/thebigbook
page_count:542
,
function(response)
// handle the response
);
有两点需要考虑: 您需要发送一个对象调用book进行阅读,并且需要将url参数放在最后,否则,Open Graph将获取meta标签中的值。如果你把它放在最后,OG 会取你发送的参数。
【讨论】:
以上是关于Facebook Open Graph 发布带有对象的操作的主要内容,如果未能解决你的问题,请参考以下文章
iOS - Facebook Open Graph API - 让标题显示在用户生成的图像旁边
Facebook Debugger lint 工具获取 HTTP 206 - 未检测到 Open Graph 元标记(其他工具可以)