http://api.example.comに POST リクエストを行うhttp://web.example.comとしましょう。API サーバーは、ラック保護を有効にした Sinatra の最新バージョンを実行しています。「Rack::Protection::HttpOrigin によって攻撃が防止されました」というエラーが表示されます。
私はこのようなことができます:
set :protection, :except => [:http_origin]
しかし、実際の問題を無視しているように感じます。
私はこれをやろうとしました:
use Rack::Protection::HttpOrigin, :origin_whitelist => ['http://web.example.com']
それでも警告が表示されます。
リクエストは拒否されませんが、Sinatra は私のセッションをクリアします。この投稿を参照してください。session_id が必要です。
HttpOrigin クラスの option_whitelist を指定する方法に関するヘルプまたは例は大歓迎です。