使用Facebook API的v2.0,在选择“取消”或“发布到Facebook”按钮后,共享对话框弹出窗口不会关闭。以前,'redirect_uri'参数传递给Feed端点,这可用于关闭窗口。但是,当尝试将此参数传递给Share端点时,我收到消息:'使用FB.ui时,不应指定redirect_uri。'
有没有办法强制弹出窗口关闭?如果没有,可能是API请求有问题吗?当选择“发布到Facebook”时,链接会被共享,因此我认为这不是登录或权限的问题。
以下是API调用的内容:
FB.ui({
method: 'share',
href: location.href,
)}, function(response){});
答案 0 :(得分: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>
希望有帮助!