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.