龙卷风:如何使用ajax发回cookie

时间:2017-08-22 03:09:21

标签: ajax cookies login tornado

我正在使用Tornado构建一个Web服务器,现在我正在编写登录模块:登录后,用户可以向服务器发送消息。

我的想法如下:
用户成功登录后,服务器将设置安全cookie:echo

然后,当用户向服务器发送消息时,该请求应包含服务器刚刚设置的cookie,以告知服务器用户的身份。如果请求中没有cookie,服务器将重定向到登录页面。

现在的问题是:服务器无法获取任何cookie。

登录:
enter image description here

您可以看到用户登录时设置了Cookie。

然后浏览器尝试使用ajax:

向服务器发送消息
self.set_secure_cookie("user", username, expires=time.time() + 60)

但是,当服务器尝试url: 'http://www.example.com/addcomment', method: post, crossDomain: true, data: message, processData: false, cache: false 时,它会获得self.get_secure_cookie("user"),这意味着请求不会向服务器发送任何cookie。

我也添加了

None

到ajax但它也不起作用。

如果ajax无法向服务器发送任何cookie,我怎么能使用Tornado的安全cookie?

1 个答案:

答案 0 :(得分:0)

好吧,设置好Cookie后,你可以重定向到visit_page_url

self.set_secure_cookie
self.redirect(visit_page_url)

如果您通过Chrome检查重定向网络请求标头,您会发现这样有 Cookie 字段: enter image description here

相关问题