【问题标题】:How to detect a cancel out of Facebook Javascript SDK's mobile iframe?如何检测 Facebook Javascript SDK 的移动 iframe 的取消?
【发布时间】:2023-03-05 18:02:02
【问题描述】:

使用带有新的“mobile_iframe”参数的 Facebook Javascript SDK 2.6 版来共享内容(我认为这是一个新参数,我在 2.6 版本之前没有看到它,但它没有出现在 FB 的更新日志中的任何位置) .该参数按宣传的方式工作,除非用户关闭对话框而不共享(即取消移动 iframe 弹出窗口),否则无法通过他们这样做的响应数据来辨别。

JS:

myJsClass.shareDetails = {
  method: 'share',
  href: shareURL
};

if (true === [on a mobile device]) {
  myJsClass.shareDetails['mobile_iframe'] = true;
}

console.info('Share Data: ' + myJsClass.shareDetails )

FB.getLoginStatus( function( response ) {
  if ( response.authResponse )
  {
    FB.ui( myJsClass.shareDetails,
    function( response )
    {
      console.info('Response: 'response);
...
  • 在移动设备上(使用移动 Safari): 分享数据:{method: "share", href: "https://[my url is here]", mobile_iframe: true, version: "v2.6"}

-- 有效共享后: 回应:[]

-- 取消后: 回应:[]

  • 在桌面浏览器上(使用 chrome):

-- 有效共享后: 回应:[]

-- 取消后: 响应:{error_code: 4201, error_message: "用户取消了对话流程"}

有没有办法确定 mobile_iframe 的取消? 供参考:https://developers.facebook.com/docs/sharing/reference/share-dialog#mobile-web-share-dialog

【问题讨论】:

    标签: javascript facebook facebook-javascript-sdk


    【解决方案1】:

    事实证明这是一个有效的错误 - 已由 Facebook 确认: https://developers.facebook.com/bugs/257808294557601

    希望他们能尽快堵住这个漏洞。

    【讨论】:

      猜你喜欢
      • 2017-09-02
      • 2019-04-10
      • 1970-01-01
      • 2017-08-08
      • 2015-09-26
      • 2013-01-20
      • 1970-01-01
      • 2011-06-10
      • 1970-01-01
      相关资源
      最近更新 更多