Я использую rails-api с devise_token_auth для аутентификации. Я могу войти без проблем через:
curl -i http://localhost:3000/api/v1/auth/sign_in -F email="[email protected]" -F password="password"
Однако выйти из системы не удается с ошибкой 404 и ошибкой «Пользователь не найден или не вошел в систему». через:
curl -X DELETE -i http://localhost:3000/api/v1/auth/sign_out
Я пробовал варианты этой команды с несколькими комбинациями параметров и значений заголовка, например:
curl -X DELETE -i http://localhost:3000/api/v1/auth/sign_out -F email="[email protected]" -H Access-Token="Ae1yaTYLkSAgdhz3LtPAZg" -H Client="9AmYF6NS8tP6EOD5nPSuxw" -H Expiry="1443073493" -H Uid="[email protected]" -H Token-Type="Bearer"
Но безрезультатно. Аналогично сконструированный тест RSpec также дает сбой с тем же ответом и ошибкой, а журналы показывают, что запрос был обработан через DeviseTokenAuth::SessionsController#destroy как JSON.
Конечно, на самом деле я не использую curl для аутентификации; просто проверка структуры запроса перед написанием соответствующего кода.