【问题标题】:Spring security handles session through JSESSIONID. But What happens with a AJAX requests, do they contain session information(i.e JSESSIONID)Spring security 通过 JSESSIONID 处理会话。但是 AJAX 请求会发生什么,它们是否包含会话信息(即 JSESSIONID)
【发布时间】:2017-12-27 15:39:58
【问题描述】:

使用 Spring Security 时:用户通过身份验证后,后续请求将通过 Spring Security 过滤器使用 JSESSIONID 标头字段(cookie 字段)进行验证。
因此,在后续请求中,如果我提交 form 或发出资源请求,浏览器将自动包含 JSESSIONID 并且在服务器端 JSESSIONID 将由 Spring Security 过滤器验证,如果一切正常然后form 将被接受或请求将被提供。

但是在认证之后,如果jsp或者前端页面有一个AJAX(或者jQuery或者dojo)请求向服务器发出会发生什么。 我不确定浏览器是否会包含 JSESSIONID 标头字段,即使有 AJAX 请求?

【问题讨论】:

    标签: ajax authentication spring-security session-cookies jsessionid


    【解决方案1】:

    是的JSESSIONID 在 AJAX 请求中自动传递。

    只要JSESSIONID cookie 的域与 AJAX 请求的域匹配,就会自动处理。

    【讨论】:

    • 请注意,Ajax POST 请求还要求您包含 csfr 标头,除非您已关闭 csfr
    猜你喜欢
    • 2017-02-27
    • 2015-04-01
    • 2010-10-15
    • 2017-11-09
    • 1970-01-01
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    相关资源
    最近更新 更多