0

这是我们正在拍摄的理想场景:

  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 人扔到了公共汽车下面,然后把他撞倒了(笑)。如果有人可以给我一段 js/jQuery 代码,那么我保证会善待所有 javascript 帅哥。

我意识到弹出窗口拦截器会给上述方法带来麻烦,还有什么可能有问题的吗?移动设备?

谢谢

4

1 回答 1

2

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

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

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

         });
    </script> 
于 2012-12-03T18:04:35.533 回答