0
我在Rails上構建了一個REST API,我試圖使用RSpec來測試它。我使用的是相當樣板授權碼:使用RSpec測試Rails REST API
def authenticate_user_from_token
pp 'authenticate_user_from_token'
pp request.headers.inspect
user = authenticate_with_http_token do |token, options|
pp token
user_id = options[:user_id]
user = user_id && Eater.find_by_id(user_id)
if user && Devise.secure_compare(user.auth_token, token)
user
else
nil
end
end
@current_user = user
end
這工作完全,如果我發送請求的捲曲,但我無法弄清楚如何通過身份驗證令牌在Rspec的。我的基本要求是:
get '/api/1/users/1'
我用頭方法嘗試設置令牌:
header 'Authorization: Token token', @token
這是行不通的。我也嘗試將它傳遞給get方法,正如我在一些示例中所見:
get '/api/1/users/1', :authorization => @token
也不起作用。什麼是正確的方法來做到這一點?
這是控制器規格還是請求規格? –
請求。我試圖通過將它用作客戶端來測試API。 –