我有以下代码记录用户并显示“选择要求的朋友”对话框(“apprequests”):
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<title>Test</title>
<script type="text/javascript">
function facebook(){
FB.login(function(response) {
if (response.authResponse) {
var access_token = FB.getAuthResponse()['accessToken'];
FB.ui({
method: 'apprequests',
message: 'Sample Title',
max_recipients:1
}, function(response){
console.log('OK');
});
}
}, {scope: 'publish_stream'});
}
</script>
</head>
<body>
<p><a href="javascript:facebook();">Test</a></p>
<div id="fb-root"></div>
<script type="text/javascript">
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/es_LA/all.js#xfbml=0&appId=XXXXXXXXXXXXXX";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
</body>
</html>
该代码适用于所有主流浏览器(Firefox,Chrome,Opera,IE11,适用于IOS的Safari,Android浏览器)。 Safari(适用于Mac / PC)是例外:它打开“apprequests”对话框,但对话框显示为空。如果您更改下拉选项(再次“邀请朋友”,然后再更改为“所有朋友”),最终会显示好友列表。
知道如何修复此错误吗?
谢谢!
答案 0 :(得分:6)
据报道Facebook-API的错误。正如mark wiltse所述:
我们设法重现了这个问题,它似乎是一个有效的错误。我们将此分配给相应的团队。
没有必要单独处理safari。你只需要保持这个任务,直到facebook开发人员解决了这个bug。