无法解释无效的CSRF令牌rails api



我目前在我的项目中遇到了一个bug,这个bug是一个带有react/redux前端的rails-api后端。

对于auth-im,使用由rails提供的httponly cookie和csrf令牌,并通过我的api包装器放置在我的请求的头中。

我的应用程序有很多非get请求,我对其中任何一个都没有CSRF问题,但我在注销操作中遇到了一个奇怪的行为。

我的注销请求是一个删除请求,如果我登录,然后立即注销,由于csrf令牌无效,请求失败,我已确保在登录后发出一个。

在调试过程中,我仔细研究了devtools中的请求,并让服务器在创建每个csrf令牌时将其记录到控制台,我让客户端在每个请求中记录令牌。我可以确认最后发布的csrf令牌与用于注销请求的令牌匹配,并且它仍然返回为无效。

更奇怪的是:如果我刷新页面,注销请求成功,尽管没有向后端发出新的请求,并且使用了与上一次请求中失败的相同的csrf令牌。

我感到不知所措,不知道该怎么办,我觉得我已经尝试了的一切

问题出现在我的api包装器中,包装器没有正确设置x-csrf标头值,尽管我的浏览器有正确的cookie,但标头被设置为未定义的

最新更新