Facebook开放图形对象动作与Facebook的C#SDK聚合
问题描述:
我一直在试图用我的Flash应用程序实现新的Facebook open graph features。我的swf调用了我的页面上的JavaScript函数(使用简单的alert()进行测试),但是我没有在时间线上看到该帖子,也没有收到响应alert()。我也用Facebook object debugger测试了我的网站,它告诉我需要og:url,og:type和og:title属性,但不存在(即使它们在我的代码中)。Facebook开放图形对象动作与Facebook的C#SDK聚合
<meta name="fb:app_id" content="<%=appId%>" />
<meta property="og:type" content="MYNAMESPACE:Game Achievement" />
<meta property="og:title" content="GaveAchievementTitleHere" />
<meta property="og:image" content="https://www.example.com/image.jpg" />
<meta property="og:description" content="description" />
<meta property="og:url" content="https://www.example.com/index.aspx"/>
<meta property="game:points" content="42" />
<meta property="game:secret" content="1" />
</head>
<body>
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js" type="text/javascript"></script>
<script type="text/javascript">
function postAction(namespace,actionName,objectName,url)
{
//alert("postAction("+namespace+","+actionName+"."+objectName+","+url+")");
FB.api('/me/'+namespace+':'+actionName+
'?'+objectName+'='+url+'&access_token='+<%=Access_Token%>,'post',
function(response)
{
if (!response || response.error)
{
alert('Error occured');
}
else
{
alert('Post was successful! Action ID: ' + response.id);
}
});
};
</script>
答
检查您是否具有“应用程序域”在您的应用程序的基本设置中定义,并且您的OpenGraph对象的网址是这一领域内。
(我有这样的问题,并设置在AppDomain固定它。顺便说一句,为成就Facebook的使用“game.achievement”作为对象类型)
我使用的是静态IP的主机我的比赛。 Facebook不会让我将此IP设置为应用程序域。有什么建议么? –