AJAX如何验证用户?

时间:2010-12-05 07:00:18

标签: ajax

当用户在页面上时,您可以使用会话或cookie来检查他是谁。

但是,当使用AJAX时,例如,为了发送答案,发送页面与用户没有联系。它如何检查它是真正的注册用户,还是只是通过标题发送它的spambot?

AJAX用户验证的常见做法是什么?

1 个答案:

答案 0 :(得分:5)

AJAX请求包含与常规请求相同的Cookie。除此之外,您还可以使用AJAX请求发送任何参数,例如会话ID。

实际上,对于服务器,如果通过XmlHttpRequest对象发出请求,它绝对没有区别。大多数框架虽然添加了X-Requested-With: XMLHttpRequest标题,但这完全是可选的。

所以..无论你用什么方式传递你的会话数据,只需确保它也可用于你的AJAX请求调用的脚本:

  • 如果您通过GET / POST传递了会话ID,请将其包含在请求的参数中。
  • 如果需要cookie,请确保将它们发送到文件。如果它与当前文件或其后代位于同一文件夹中,则通常是安全的。如果它在另一个(子)域上,你可能会遇到问题 - 不仅是cookie,还有alsowith跨域AJAX,由于同源策略浏览器通常不允许这样做。