javascript - Facebook API 请求对话框不适用于 Safari

标签 javascript html safari facebook-javascript-sdk

我有以下代码可以让用户登录并显示“选择请求好友”对话框(“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)是个异常(exception):它正在打开“apprequests”对话框,但该对话框是空的。如果您更改下拉选项(更改为“要邀请的 friend ”,然后再次更改为“所有 friend ”), friend 列表最终会出现。

知道如何修复这个错误吗?

谢谢!

最佳答案

已报告 Facebook-API 的错误.作为mark wiltse此处声明:

We have managed to reproduce this issue and it appears to be a valid bug. We are assigning this to the appropriate team.

safari 无需单独处理。您只需要暂停此任务,直到 Facebook 开发人员解决此错误。

关于javascript - Facebook API 请求对话框不适用于 Safari,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20805950/

相关文章:

html - Laravel-SQLSTATE[23000] : Integrity constraint violation

javascript - 有谁知道您实际上是如何更新 safari 内容拦截器的 blockerList.json 文件的?

javascript - Safari JavaScript 问题

css - Safari 扩展 : style of selectbox like safari's bookmark folders

javascript - 如何设置片段着色器的纹理读取和写入?

javascript - Google Apps 脚本中的条纹 HTML 标签

javascript - 如何在向下钻取后创建具有堆叠柱的图表?

javascript - 使用 OAuth 限制移动网页和 native 应用程序对企业网络服务的访问

javascript - Jekyll 网站未设置图标

javascript - 如何使用JavaScript将Fetch数据设置为Array并将数据设置为innerHTML Bootstrap卡