4

使用 v2.0 的 Facebook API,选择“取消”或“发布到 Facebook”按钮后,共享对话框弹出窗口不会关闭。以前,“redirect_uri”参数被传递到 Feed 端点,这可用于关闭窗口。但是,当尝试将此参数传递给 Share 端点时,我收到消息:“使用 FB.ui 时,您不应指定 redirect_uri。”

有没有办法强制关闭弹出窗口?如果没有,API 请求是否有问题?The link DOES get shared when "Post to Facebook" is selected, so I don't think it's an issue with login or permissions.

下面是 API 调用的样子:

FB.ui({
    method: 'share',
    href: location.href,
)}, function(response){});
4

1 回答 1

1

尝试添加 preventDefault。单击锚标记时,我触发了 FB.ui 操作。当我点击链接时,页面刷新了。然后,当我在弹出窗口中单击“发布到 Facebook”时,我认为回调无处可去。

什么对我有用:

handleFbShare = (e) => {
  e.preventDefault();
  FB.ui({
    method: 'share',
    display: 'popup',
    href: 'https://your-url/',
  }, function(response){});
}

(...)

<a href="" className='button__facebook' onClick={this.handleFbShare}>Share on Facebook</a>

希望有帮助!

于 2018-09-18T05:22:32.450 回答