Ustawienie Sinatra i Rack Protection

Używam Sinatry i CORS, aby zaakceptować przesyłanie plików w domenie A (hefty.burger.com). Domena B (fizzbuzz.com) ma formularz, który przesyła plik na trasę na A.

Mam trasę opcji i trasę pocztową, oba o nazwie „/ uploader”.

<code>options '/uploader' do
  headers 'Access-Control-Allow-Origin' => 'http://fizz.buzz.com',
  'Access-Control-Allow-Methods' => 'POST'
  200
end 

post '/uploader' do
  ... 
  content_type :json
  [{:mary => 'little lamb'}].to_json
end
</code>

Opcje zostają trafione jako pierwsze ... i działa ... wtedy post zostaje trafiony i zwraca 403.

Jeśli wyłączę ochronę, post działa ... jaki rodzaj ochrony muszę wykluczyć z listy, aby zachować ochronę, ale zezwolić na te posty?

Niedawno zostałem spalony przez nową ochronę Rack, która zaczęła się na Heroku i sprawiła mi trochę smutku ... każdy ma dobry wskaźnik, co tu robić? Powodem, dla którego to mówię, jest nagle, że widzę wpisy dziennika z alertami dotyczącymi problemów z porywaniem sesji (prawie na pewno ze względu na nic więcej niż uruchamianie> 1 hamowni dla aplikacji). Widzę ochronę stojaka (1.2.0) w moim Gemfile.lock, chociaż nigdy o to nie prosiłem ... coś w moim manifeście domaga się tego, więc jest ładowane, ale nic w mojej aplikacji Sinatra nawet nie próbuje tego wymagać lub skonfiguruj.

questionAnswers(5)

yourAnswerToTheQuestion