4

我需要从 rspec 向控制器发送一个 cookie 请求。我使用 request.cookies['remember_token'] = 'foo' 来设置所需的 cookie,但是控制器以某种方式接收到先前请求留下的错误值。

例如,我设置 cookie 并在规范中发送 put 请求:

before do
  request.cookies['remember_token'] = 'foo'
  put 'update', calendar_id: cal.id, id: @day.id, comment: 'Test comment!'
end

将 request.inspect放入控制器显示以下内容:

@set_cookies={"remember_token"=>"bar"}, @cookies={"remember_token"=>"foo"}

似乎 @set_cookies={"remember_token"=>"bar"} 是从之前在同一规范中提出的请求中留下的。当我在控制器中访问 c​​ookies['remember_token'] 时,它返回来自 @set_cookies 的值,而不是 @cookies。

@set_cookies 是什么,我做错了什么?

4

0 回答 0