【发布时间】:2013-08-20 17:57:53
【问题描述】:
我正在尝试将自定义故事发布到概念验证 Facebook 应用程序,其中包含对象类型“徽章”和操作类型“赚取”。当我在 Facebook Open Graph Types 界面中为此“获取代码”时,Graph Explorer 示例成功地将故事发布到我的时间线。但是,一个参数(“徽章”)是对 OG 样本的 URL 引用。
我怎样才能直接发布一些东西,而不是作为 OG 样本的参考?
使用 C# SDK,我目前正在尝试这个:
var client = new FacebookClient();
client.AccessToken = tokenResult.access_token;
dynamic parameters = new ExpandoObject();
parameters.badge = @"
{
""app_id"" : [my app ID],
""title"" : ""Widget Badge"",
""image"" : ""[a public image URL]"",
""url"" : ""[a public website URL]"",
""type"" : ""[my custom namespace]:badge""
}
";
var result = client.Post("/me/[my custom namespace]:earn", parameters);
但是,我从 Facebook 收到的例外情况是:
“[上述 JSON]”是类型为“Reference”的属性“badge”的无效值
按照我在网上找到的一些代码 sn-ps,我尝试将上面的属性“badge”更改为通用“post”(我猜想依靠“type”值来了解它发布的内容),但随后该错误表明我缺少必需的参数“badge”。
我没有找到任何可以告诉我在这种情况下“参考”类型是什么的东西,尽管我可能只是忽略了一些东西。在原始示例中,它是 OG 示例的 URL,但我假设我们可以发布自定义内容而不仅仅是示例。我是否需要使用 OG Samples 等元标记中的值来托管自己的某种“示例”页面,或者我可以直接在帖子中指定值吗?
【问题讨论】:
标签: facebook-graph-api facebook-opengraph