rack-corsを利用してRailsでクロスドメインでのリクエストを受け付ける
はじめに
Vue.jsなどを利用してフロントエンドをバックエンドから切り出した際に問題となるのが、クロスドメインでのアクセスです。Railsでアプリを開発する際には、rack-corsと呼ばれるgemを利用するのが一般的です。
実装
導入は非常に簡単です。まずはgemをインストールします。
gem install rack-cors
次いで、config/environments/development.rbにrack-corsの設定を入れます。
rack-corsには非常に多くのオプションが存在しますが、最低限、上記を入れておけばフロント側との疎通確認を行うところまでは行なえます。exposeの指定はJWTトークンのやり取りのためのものです。
ただし、これは開発用の設定となります。
本番環境で利用する際には、各種ドメインやパスの指定なども含めて、正しくセキュアに設定する必要があるので注意が必要です。