由异步HTTPS请求设置的Cookie未显示

时间:2013-02-09 06:58:31

标签: ajax asp.net-mvc http cookies https

我有一个网站使用异步http请求(ajax,使用常见的用词不当)来执行登录和注册。身份验证cookie由异步请求设置,一切正常。

我最近锁定了注册和登录操作以要求https。除了返回的身份验证cookie无法正常运行且用户实际上没有登录之外,所有 都可以正常工作。

在Chrome中,在开发工具中,在资源下,它不显示任何已创建的Cookie。如果我转到Chrome设置并查看所有Cookie,我可以看到已创建Cookie 。也许它是加密的而且不可读?

所以,总结一下:

  • 使用普通HTTP加载初始页面
  • “登录”操作是异步HTTPS请求
  • HTTPS请求返回的身份验证Cookie似乎不起作用

如何让它发挥作用?

我应该注意几件事:

  • 这不是CORS问题。
  • 我知道潜在的中间人攻击。本网站不包含敏感数据。我正在尝试做一些与reddit正在做的非常相似的事情(如果不完全一样)。

1 个答案:

答案 0 :(得分:1)

我设法解决了这个问题。事实证明,在Http响应中,您需要将Access-Control-Allow-Credentials标头设置为true。此外,您必须在客户端http请求上将withCredentials设置为true