javascript - 使用 javascript (OAuth) 从子窗口重定向到父窗口到 iframe

标签 javascript redirect iframe oauth

这是我们正在努力实现的理想场景:

  1. Acme.com 有一个“我的帐户”链接。当用户点击这个链接时,内容来自https://acme.xyz.com/myaccount并显示在 acme.com 上的 iframe 中

  2. 我控制“acme.xyz.com”应用程序,并为用户提供使用其 Google/Facebook 凭据登录的选项。由于 OAuth 在登录期间正确地拒绝 iframe,因此我通过打开子窗口来执行 OAuth 重定向。

  3. 一旦我在子窗口中收到来自 Google/Facebook 的 OAuth 回调,我想关闭子窗口并将焦点恢复到父窗口(iframe 中的窗口)。

    如何执行步骤#3?我意识到我必须使用 javascript 来完成此操作,但我们将我们常驻的 javascript 人员扔到了公共(public)汽车下并把他撞了过去(咧嘴笑)。如果有人能给我一段 js/jQuery 代码,那么我保证会善待所有 javascript 家伙。

我意识到弹出窗口拦截器会对上述方法造成麻烦,还有其他可能有问题的吗?移动设备?

谢谢

最佳答案

事实证明这非常简单 - 对于其他正在寻找解决方案的人来说,这就是我使用的:

    <script>
         $(document).ready(function(){

             if(opener) { // close OAuth popup window if applicable
                 opener.location.href="${customerHomeUrl}";
                 top.close();
             }

         });
    </script> 

关于javascript - 使用 javascript (OAuth) 从子窗口重定向到父窗口到 iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13676021/

相关文章:

javascript - 在 Knockoutjs 上操作 DOM 元素 "before-value-changed"

javascript - 引用错误 : require is not defined

apache - (还有另一种)通过.htaccess中的重写方式删除www的漂亮方法吗?

php - Facebook 登录重定向 PHP/Javascript 不起作用

.htaccess - 没有 ID 匹配的论坛迁移 : how to handle 301 redirect?

javascript - 检查 iFrame 内容是否存在

jquery - 当 iframe 的父窗口滚动时,帮助我在 iframe 中重新居中 ModalPopup

iframe - 将 YouTube iframe 添加到 iOS 上的 Cordova 应用程序

javascript - 如何创建复杂的多维关联数组?

javascript - 使用 javascript 更改 HTML,而不使用选择器