javascript - 使用 Django 打开社交登录的新窗口,然后关闭并返回父窗口

标签 javascript python django twitter-bootstrap python-social-auth

我正在使用 Django 1.6.2 和 Python-Social-Auth 0.1.23。 我还在使用 Twitter Bootstrap 作为我的模板引擎。

我在我的模板中使用了 python-social-auth 并为我的客户实现了 LinkedIn 登录,我对其进行了编码,以便使用 javascript 在新窗口中打开登录。

<li>
    <a class="btn" href="" 
        onclick="window.open('{% url 'social:begin' 'linkedin' %}', '_blank', 'location=yes,height=570,width=520,scrollbars=yes,status=yes');">
<span class="glyphicon glyphicon-user"></span> Sign In</a></li>

我的问题是,如何在成功登录后关闭子窗口并重新加载父窗口?

我意识到这个问题可能非常具体,但之前有人不得不实现相同的想法。请注意:如果可以的话,我不想编辑任何 python-social-auth 内容。

让我知道您是否可以使用任何其他信息。我也可以包含我的 views.py。

最佳答案

您已经解决了在弹出窗口中打开的部分,关闭是棘手的部分,因为您需要为某些页面提供所需的 JS 代码以关闭弹出窗口,然后在父窗口中触发重新加载。要实现这一点,只需定义设置 SOCIAL_AUTH_LOGIN_REDIRECT_URL = '/page/that/servers/the/js',然后创建执行此操作的 View /模板。

检查父级中的关闭和触发重新加载是如何完成的,这很容易,并将该 JS 提供给用户。

关于javascript - 使用 Django 打开社交登录的新窗口,然后关闭并返回父窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23224434/

相关文章:

python - 多线程中无法解决Tcl_Asyncdelete

javascript - 为什么这个else语句没有被触发?

Javascript CHAR 插入复制击键

javascript - Bootstrap Modal Jquery 无法正确呈现或显示

python - 哪些类型的语言允许以编程方式创建变量名?

python - 添加重定向到 CreateAPIView

javascript - 在 node.js 中创建链式方法?

python - 计算 Matrix 中的邻居数 - Conway Game of Life

python - 网络音频播放器需要一些时间才能播放歌曲

python - 有条件地显示来自单个 TastyPie 资源的全部或部分字段