You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

纯Java实现REST请求:POST获Session Cookie后发起授权GET请求

解决Spring Security认证后携带Session Cookie的curl请求问题

我刚好处理过类似的场景,用curl完全可以搞定这个流程,核心就是把第一次POST请求返回的Cookie保存下来,再在后续的GET请求里带上它。

完整两步命令示例:

  1. 第一步:发起POST请求并保存Session Cookie
    你给出的命令可以补全成这样(记得替换实际的用户名和密码):

    curl -X POST -c session_cookie.txt 'http://localhost:8465/myapp/j_spring_security_check' -d 'j_username=your_actual_username&j_password=your_actual_password'
    
    • -c session_cookie.txt:这个参数会把服务器返回的Cookie(包含Session ID)保存到session_cookie.txt文件中
    • -d:用来传递Spring Security认证所需的表单参数,因为j_spring_security_check接口通常接收表单格式的用户名密码
  2. 第二步:携带保存的Cookie发起授权GET请求
    用刚才保存的Cookie文件发起需要授权的GET请求:

    curl -b session_cookie.txt 'http://localhost:8465/myapp/your_target_get_endpoint'
    
    • -b session_cookie.txt:告诉curl读取这个文件里的Cookie并随请求发送,这样服务器就能识别你的会话,不会返回未授权错误

额外小技巧:

如果不想生成中间文件,也可以用curl的管道把两个请求连起来,不过文件方式更直观,也方便调试(你可以打开session_cookie.txt查看里面的Session ID):

curl -X POST -c - 'http://localhost:8465/myapp/j_spring_security_check' -d 'j_username=xxx&j_password=xxx' | curl -b - 'http://localhost:8465/myapp/your_target_endpoint'

内容的提问来源于stack exchange,提问作者GRK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:48:16