Facebook聊天插件不适用于Safari iOS/OSX,但在Chrome中运行良好

Facebook聊天插件不适用于Safari iOS/OSX,但在Chrome中运行良好,facebook,facebook-chatbot,facebook-chat,Facebook,Facebook Chatbot,Facebook Chat,我在facebook聊天插件上遇到了问题,它在safari中在我的网站上工作,但似乎已经停止工作。这是在iOS和Mac操作系统中实现的。它在铬合金中工作良好。我从高级Messenger设置中复制了代码 <div id="fb-root"></div> <script> window.fbAsyncInit = function() { FB.init({ xfbml : true,

我在facebook聊天插件上遇到了问题,它在safari中在我的网站上工作,但似乎已经停止工作。这是在iOS和Mac操作系统中实现的。它在铬合金中工作良好。我从高级Messenger设置中复制了代码

<div id="fb-root"></div>
  <script>
    window.fbAsyncInit = function() {
      FB.init({
        xfbml            : true,
        version          : 'v5.0'
      });
    };

    (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 = 'https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js';
    fjs.parentNode.insertBefore(js, fjs);
  }(document, 'script', 'facebook-jssdk'));</script>

  <!-- Your customer chat code -->
  <div class="fb-customerchat"
    attribution=setup_tool
    page_id="xxxxxxxx">
  </div>

window.fbAsyninit=函数(){
FB.init({
xfbml:是的,
版本:“v5.0”
});
};
(功能(d、s、id){
var js,fjs=d.getElementsByTagName[0];
if(d.getElementById(id))返回;
js=d.createElement;js.id=id;
js.src=https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js';
fjs.parentNode.insertBefore(js,fjs);
}(文档“脚本”、“facebook jssdk”);
我已确保该域名被列入白名单

我已经在.htaccess文件中为我的站点创建了一个内容安全策略,但它仍然不起作用。在safari、Edge或firefox中,但可在Chrome中使用:

 <FilesMatch "\.(html|php)$">
       Header set Content-Security-Policy "
          default-src 'self' *.googleapis.com *.facebook.com *.marchex.io;
          script-src 'self' *.cloudflare.com *.facebook.com *.marchex.io;
          font-src 'self' *.googleapis.com *.gstatic.com;
          img-src 'self' *.marchex.io data:;
          frame-ancestors 'self' *.facebook.com;
          child-src 'self' *.facebook.com;"
   </FilesMatch>

标题集内容安全策略“
默认src'self'*.googleapis.com*.facebook.com*.marchex.io;
脚本src'self'*.cloudflare.com*.facebook.com*.marchex.io;
字体src'self'*.googleapis.com*.gstatic.com;
img src“self”*.marchex.io数据:;
框架祖先的自我*。facebook.com;
儿童src'self'*.facebook.com;”
这项政策确实有效。如果我只是将默认src设置为“self”,它会停止大量内容加载


非常感谢您的帮助

我忘了添加,在控制台中我收到以下错误。。。拒绝装载。。。。。。。因为它没有出现在内容安全策略的框架祖先指令中。听起来您有一些内容安全策略使iframe无法加载。谢谢,请详细说明。这是在网站上还是在浏览器中。在我的知识范围之外,我添加了一个内容安全策略,但仍然存在问题,即使我将框架祖先设置为*并且子弧设置为*!?!?我们很难在看不到你做了什么的情况下告诉我们你做错了什么。如果你链接到这个页面,我会很容易忘记添加,在控制台我得到以下错误。。。拒绝装载。。。。。。。因为它没有出现在内容安全策略的框架祖先指令中。听起来您有一些内容安全策略使iframe无法加载。谢谢,请详细说明。这是在网站上还是在浏览器中。在我的知识范围之外,我添加了一个内容安全策略,但仍然存在问题,即使我将框架祖先设置为*并且子弧设置为*!?!?我们很难在看不到你做了什么的情况下告诉我们你做错了什么。如果你链接到这个页面,会更容易