0

如果用户已经通过服务器进行了身份验证,我对您将如何确定使用 XMLHttpRequest 感兴趣?我可以发送我的请求并返回数据,但如果我刷新页面并再次请求数据,即使会话超时尚未过期,我的登录表单也会触发。

有什么想法吗?

谢谢克里斯

4

1 回答 1

0

这里有几个选项。通常,服务会以登录表单响应任何未经身份验证的请求。因此,如果您正在发出一个获取 JSON 的 AJAX 请求,您只需查看响应的内容类型 ala xhr.getResponseHeader('Content-Type')。经过身份验证的响应应该类似于application/json,而未经身份验证的响应将是text/html(或类似的东西。)

但是...您还可以查看document.cookie用户是否定义了会话 cookie。虽然这不是一个防弹检查(cookie 可能无效,或者服务器可能有额外的检查仍然可能使请求失败),但这并不是一个不合理的检查。

于 2012-12-20T17:20:06.013 回答