【问题标题】:FB.ui share_open_graph giving wrong reponse on mobileFB.ui share_open_graph 在移动设备上给出错误响应
【发布时间】:2016-08-12 07:21:41
【问题描述】:

我的编码如下:

<!DOCTYPE>
<html>
    <head>
    <script src="https://connect.facebook.net/en_US/sdk.js"></script>
    <meta property="fb:app_id" content="1665615247095212" /> 
    <meta property="og:type" content="heppiheppi:shares" /> 
    <meta property="og:url" content="http://mywebsite.com" /> 
    <meta property="og:title" content="Walk-in" /> 
    <meta property="og:image" content="http://mywebsite.com/images/intro.jpg" />
    <meta property="og:description" content="Bring more customers" />
</head>
<body style='padding:0;margin:0;'>
    <div id="fb-root"></div>
    <script>
        FB.init({
              appId      : '1665615247095212',
              xfbml      : true,
              version    : 'v2.7'
            });

            function LaunchDialog(){
            FB.ui({
               method: 'share_open_graph',
               action_type: 'og.shares',
               action_properties: JSON.stringify({
                 object:'http://mywebsite.com',
               })
             },
             function(response) {
if (response && !response.error_message) {
  alert('Posting completed.');
} else {
  alert('Error while posting.');
}
});
        }
    </script>
    <a href="#" onclick="LaunchDialog();">Share now</a>
</body>
</html>

如果在桌面浏览器上测试,点击“立即分享”,弹出分享对话框,点击取消/X,会显示“发帖时出错”。 如果在手机浏览器上测试,点击“立即分享”,弹出分享对话框,点击取消/X,会显示“发布完成”。 有人对这个问题有任何线索吗?

【问题讨论】:

  • 检查响应对象实际包含的内容。
  • 我可以知道如何检查吗?
  • 我使用 console.log 来检查响应对象。如果在桌面浏览器上测试,点击 Post to Facebook,它不会显示任何内容;单击取消/X,它将显示“未定义”。
  • 您是否在移动设备上登录了 Facebook? (在浏览器中,不是任何本机应用程序。)

标签: javascript facebook fb.ui share-open-graph


【解决方案1】:

您将 og:type 设置为“heppiheppi:shares”,您是否在您的应用程序中创建了此对象类型!??如果不是,请将其设置回“网站”。

【讨论】:

  • 我改成,结果还是一样。
【解决方案2】:

Facebook 团队已确认这是一个错误,并将其分配给相关团队进行进一步调查。

【讨论】:

    【解决方案3】:

    来自 Facebook 的更新:

    共享团队经过详细调查,确定差异是由于我们这边的对​​话的移动版和桌面版的代码路径不同

    当您在响应对象中收到帖子 ID 或错误消息时,如果用户已登录您的应用和/或已授予 publish_actions 权限,则应按照文档记录

    对于所有其他情况,我们不会记录响应是什么,您遇到的差异是有时您会收到一个空的“响应”对象,而其他时候根本没有响应对象

    目前不打算进行任何更改来解决此问题,并且您不能使用对话框中缺少响应来确定是否创建了帖子

    对于延迟在这里得到明确答案表示歉意,但您应该假设当前的行为将在中短期内保持不变;

    如果进行长期更改,我认为响应将被完全删除的可能性更大,因为这将与该领域的其他更改保持一致,以防止分享门控和其他对用户帖子的激励。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-22
      • 2013-12-31
      相关资源
      最近更新 更多