Facebook:不安全的 JavaScript 问题(document.domain 值应该相同)

2024-04-21

我的是一个基于canvas的FB应用程序。在 Chrome 和 Firefox 上都面临问题(尽管通常是 Chrome):

1.当我在新的隐身 Chrome 窗口上点击我批准的 Facebook 应用程序安全 URL 时(https://apps.facebook.com/myfbappnamespace/ https://apps.facebook.com/myfbappnamespace/),以下错误仅在第一次出现,当我刷新页面时,错误消失了(大多数情况下)

about:blank 页面显示不安全内容http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b...os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=unknown_user。

不安全的 JavaScript 尝试通过 URL 访问框架http://www.mydomain.com/control/myfacebookapp/ http://www.mydomain.com/control/myfacebookapp/来自带有 URL 的框架http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b...os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=unknown_user。 请求访问的框架将“document.domain”设置为“facebook.com”, 但正在访问的框架却没有。两者都必须设置“document.domain” 为相同的值以允许访问。
xd_arbiter.php:18

不安全的 JavaScript 尝试通过 URL 访问框架http://www.mydomain.com/control/myfacebookapp/ http://www.mydomain.com/control/myfacebookapp/来自带有 URL 的框架http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b...os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=unknown_user。 请求访问的框架将“document.domain”设置为“facebook.com”, 但正在访问的框架却没有。两者都必须设置“document.domain” 为相同的值以允许访问。 xd_arbiter.php:18

2.当我尝试http url(http://apps.facebook.com/myfbappnamespace/ http://apps.facebook.com/myfbappnamespace/),控制台中显示的错误是:

不安全的 JavaScript 尝试通过 URL 访问框架http://apps.facebook.com/myfbappnamespace/ http://apps.facebook.com/myfbappnamespace/来自带有 URL 的框架https://s-static.ak.facebook.com/connect/xd_arbiter.php?version=18#channel= https://s-static.ak.facebook.com/connect/xd_arbiter.php?version=18#channel=…Fcontrol%2Ffacebookappchannelurl%3Ffb_xd_fragment%23xd_sig%3Df23e84e85c%26。 请求访问的帧具有“https”协议,该帧是 访问的协议为“http”。协议必须匹配。

现在,当我登录我的 Facebook 帐户查看这些错误发生了什么时,它们就消失了,只是有时而已。我知道我在查询中使用了“大多数时候”和“有时”,但这正是我身上发生的事情。我还搜索了论坛并意识到 Facebook 已经修复了这个应该是 chrome 特定的老问题。我已确保我的 FB.init 和其他调用是特定于 location.protocol 值的。还在画布 url (http) 和安全画布 url (https) 中配置了正确的值。还尝试了这两种设置: 帐户设置 -> 安全 -> 安全浏览 -> (启用和禁用)

如果我在某处遗漏了某些东西,有人可以帮忙吗?


有很多可能的问题。尝试使用以下解决方案之一:

  • 协议必须相同(因此尝试访问 iframe 的页面必须与提供 iframe 的站点具有相同的协议),因此,如果您在沙盒模式(http 而不是 https)下测试您的应用程序,请禁用“安全”测试帐户的“浏览”模式
  • 频道网址打开FB.init() (见下面的代码)
  • 启用 apache 的 headers mod 并将以下行放入您的 .htaccess 中
  • put the <div id="fb-root"></div>在 body 标记之后,如 fb 文档中所述:https://developers.facebook.com/docs/reference/javascript/ https://developers.facebook.com/docs/reference/javascript/
  • 尝试将所有自动登录代码放在用户操作之后(例如单击登录按钮)
  • 从 Canvas URL 中删除尾部斜杠(在应用程序→设置中),例如http://yoursite.com?
  • 编辑你的<html>像这样的标签:<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="https://www.facebook.com/2008/fbml">

代码为.htaccess

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>

代码为channels issue:

FB.init({
    appId: '1234567890',
    status: true,
    cookie: true,
    xfbml: true,
    channelUrl : '//yoursite.com/channel.html'
});

The 频道.html您的服务器提供的应包含这一行:

<script src="//connect.facebook.net/en_US/all.js"></script>

EDIT

关于您的第一个问题:

The page at about:blank displayed insecure content from http://static.ak.facebook.com/connect/xd_arbiter.php?version=18#cb=f2e4fe7b…os.com%2Ff4aeadb2&domain=www.mydomain.com&relation=parent&error=unknown_user.

这是一个预期的异常,用于测试条件 - 这没有副作用,所以不必关心它。

请参考这个问题:不安全的 JavaScript 尝试访问带有 URL 的框架:域、协议和端口必须匹配。 https://stackoverflow.com/questions/10577590/unsafe-javascript-attempt-to-access-frame-with-url-domains-protocols-and-ports

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Facebook:不安全的 JavaScript 问题(document.domain 值应该相同) 的相关文章

  • socket.io 的良好初学者教程? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • JavaScript 中的埃拉托斯特尼筛法对大量数据无限运行

    我一直在尝试写埃拉托斯特尼筛法 http en wikipedia org wiki Sieve of EratosthenesJavaScript 中的算法 基本上我只是按照以下步骤操作 创建从 2 到 n 1 的连续整数列表 令第一个素
  • Eslint errorring 导入没有扩展名的 jsx

    我正在尝试在 es6 中导入 jsx 文件而不需要 jsx 扩展名 import LoginErrorDialog from LoginErrorDialogView Not import LoginErrorDialog from Log
  • 如何修改每个JSON对象javascript

    我想修改里面的每个 JSON 值cooldown object cooldown user 1 This user2 0 This 在 Javascript 中使用 for 语句 我研究了好几个小时 只找到了内部的 blocks Edit
  • Facebook API sdk 4.0 - 将照片发布到 Facebook

    我正在尝试创建一个应用程序 用户可以在其中浏览照片并将其从计算机提交到 Facebook 为此 他们首先必须将照片上传到服务器 然后使用 Facebook 请求将此图像发布到 Facebook 我正在使用多部分 表单数据 这就是我到目前为止
  • 使用 JavaScript 禁用第三方 cookie

    我正在努力根据所有在欧盟运营的公司的数据保护规则实施新的 Cookie 政策合规性 根据该规则 用户在使用任何网站时必须能够拒绝 接受除必需的 Cookie 之外的所有内容 在我客户的网站中 我可以看到正在存储以下第三方 cookie ga
  • 带有淘汰赛js的隐形recaptcha

    我正在完成隐形验证码 但我在实现它时遇到问题 谷歌开发人员页面中的代码显示它应该是这样的
  • 如何纠正流警告:解构(缺少注释)

    我正在编写一个小型 React Native 应用程序 并且正在尝试使用 Flow 但我无法在任何地方真正获得有关它的正确教程 我不断收到错误 destructuring Missing annotation 有关 station 这段代码
  • 调整图像大小并将画布旋转 90 度

    这里有很多关于在 js 上使用画布旋转图像的主题 我阅读了其中的大部分内容 但无法找到解决我的问题的方法 我正在接收任何分辨率的图像 来自上传组件 我将其大小调整为 1024x768 如下所示 var canvas document cre
  • 使用 CSS 或 Javascript 填充动画

    我只是想知道是否可以使用 CSS 或 javascript 创建填充动画 基本上我想创建一个填充动画 如下图所示 http i40 tinypic com eit6ia png http i40 tinypic com eit6ia png
  • Javascript split 不是一个函数

    嘿朋友们 我正在使用 javascript sdk 通过 jQuery facebook 多朋友选择器在用户朋友墙上发布信息 但是我收到此错误friendId split 不是函数 这是我的代码 function recommendToFr
  • DataTables row.add 到特定索引

    我正在替换这样的行项目 var targetRow entity row dataTable targetRow closest table dataTable DataTable dataTable row targetRow remov
  • iOS:Facebook 登录访问令牌错误:由于模拟器错误,回退到从 NSUserDefaults 加载访问令牌

    根据说明进行配置后 我不断收到此错误 并且无法在我的应用程序上成功使用 Facebook 登录 我在 XCode 8 1 上运行它并使用 iOS 10 1 模拟器 我按照 Facebook iOS SDK 指南中的步骤操作 并将 Faceb
  • Vuejs 2:去抖动不适用于手表选项

    当我在 VueJs 中反跳此函数时 如果我提供毫秒数作为原语 它就可以正常工作 但是 如果我将其提供为对 prop 的引用 它会忽略它 这是道具的缩写版本 props debounce type Number default 500 这是不
  • Javascript 假值(null、未定义、false、空字符串:“”或 '' 和 0)和比较(==)运算符 [重复]

    这个问题在这里已经有答案了 当我使用任何一个值时 null undefined false 0 in a if陈述 它总是被评估为谬误 false 另外 这些值的否定 null undefined false 0 in a if语句总是被评
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional
  • Three.js 各种大小的粒子

    我是 Three js 的新手 正在尝试找出添加 1000 个粒子的最佳方法 每个粒子都有不同的大小和颜色 每个粒子的纹理是通过绘制画布创建的 通过使用粒子系统 所有粒子都具有相同的颜色和大小 为每个粒子创建一个粒子系统是非常低效的 有没有
  • 代码镜像错误:未捕获错误:扩展集中无法识别扩展值([对象对象])

    全部 我目前正在从事一个React Electron项目 该项目的目标是完成一个Markdown编辑器 当我配置codemirror 该程序报告错误说 Uncaught Error Unrecognized extension value
  • 带参数的事件监听器

    我想将参数传递给 JavaScript 中的事件侦听器 我已经找到了解决方案 但我无法理解它们为什么或如何工作以及为什么其他解决方案不起作用 我有 C C 背景 但是 Javascript 函数的执行有很大不同 您能否帮助我理解以下示例如何
  • 在 CKEditor 中设置字体大小和字体系列

    我正在使用 ckeditor 我想问一下这个插件如何设置font family和font size 我尝试过使用 CKEDITOR config font defaultLabel Arial CKEDITOR config fontSiz

随机推荐