Я делаю PUT "/api/shipments/H10372375236/ready_for_pickup"
, но это останавливается на Spree::BaseController#authenticate_user
. Мой запрос PUT не содержит заголовка X-Spree-Token, как того требует BaseController#api_key
Это код моей кнопки:
<%= form_tag(spree.api_ready_for_pickup_path(shipment), { method: "PUT", remote: true, id: "admin-ship-shipment" }) do %>
<%= submit_tag Spree.t(:ready_for_pickup), class: "ship-shipment-button" %>
<% end %>
Это мои маршруты:
Spree::Core::Engine.routes.draw do
namespace :api, defaults: { format: 'json' } do
put '/shipments/:id/ready_for_pickup' => 'shipments#ready_for_pickup', as: :ready_for_pickup
end
end
Rails.application.routes.draw do
mount Spree::Core::Engine, :at => '/'
end
rake routes
доступен в виде Gist здесь. Я создал ключ API для текущего пользователя в интерфейсе администратора. Как убедиться, что запрос PUT содержит отсутствующий X-Spree-Token?