通过ajax从外部站点验证用户

时间:2018-05-24 22:42:06

标签: python django

问题

我需要来自一个特定外部网站的人可以通过发送Ajax请求在我的网站中进行身份验证。之后,他们必须被重定向到我的网站。

我正在尝试

我已经创建了自定义身份验证功能并配置了CORS标头,因此我的请求完全正常,我可以从外部网站进行身份验证。

问题是:即使我可以进行身份​​验证并获得OK响应,当我将用户重定向到我的网站时,他也没有活动会话。

为什么?

我猜Django在浏览器cookie中设置会话信息,我不是这样做的。

我的问题:

我该怎么做,所以我可以在用户从外部网站进行身份验证后对用户进行身份验证?

我很感激任何想法。

1 个答案:

答案 0 :(得分:0)

好吧,我完成了工作。

我不得不使用表单提交+重定向,因为我无法使用ajax将cookie保存在正确的域中。我使用了jQuery.redirect插件,所以我不必在外部网站上创建表单。

我创建了一个自定义身份验证功能,如果用户拥有有效的凭据,我会将他重定向到我的主页(该部分使cookie正常工作)。

我也可以删除CORS设置,因为在跨域请求中不会阻止表单提交。