rspec控制器测试中的自定义请求标头作为rack.session传递

Mon*_*key 5 rspec ruby-on-rails

我尝试按照如何传递自定义标题的说明,但它不适合我.这是我在respec测试中调用的内容

post :create, {name:profile.name}, {'X-API-KEY' => 'somekey'}
Run Code Online (Sandbox Code Playgroud)

从我的控制器,我没有在标题中看到它作为X-API-KEY,而是似乎在request.headers ["rack.session"] ["X-API-KEY"]

我怎么能把它作为"rack.session"传递给它

Ste*_*nga 6

我今天早上也在挖掘这个问题.问题来自http://apidock.com/rails/ActionController/TestProcess/process,方法签名如下所示(action, parameters = nil, session = nil, flash = nil, http_method = 'GET').这对我来说是非常意外的,我会继续看,虽然我不太确定为什么会这样.

为了让它工作,你可以做到

before do request.headers['X-API-KEY'] = 'somekey' end

这可行,但不完全是我想要/期望的get方法.