首页 > 解决方案 > window.opener 在 chrome 版本 >88 中返回 null

问题描述

Facebook 第三方登录弹出(子)窗口在成功登录后不会返回到父级。进一步调试显示 window.opener 设置为空值。我们在 chrome 浏览器升级后观察到这个问题。通过谷歌搜索,我们了解到这是 google 引入的安全修复程序 - window.opener 被分配为 null 并阻止弹出访问父窗口。

家长:

window[‘fbSignIn’] = window.open(facebookAuthTokenUrl, ‘fbSignIn’, 600, 600);

// Exposing a function to global window object, to listen FB Sign-In result

window.test1 =(data) => {

}

孩子:

window.opener.test1(JSON.parse(result)); —-> 这里我们无法访问 test1,因为 window.opener 为 null

我正在寻找解决此问题的建议。我敢肯定,许多其他人也可能遇到过这个问题,他们是如何解决这个问题的?

提前致谢

标签: javascriptreactjsgoogle-chromedomfacebook-authentication

解决方案


推荐阅读