AngularJSとRailsで非同期処理を行うシステムを構築しているのですが、PUTまたはPATCHを使った場合クロスドメイン制約により拒否されてしまいます。
Railsでは以下のように、フロントエンド側のドメインを許可しています
サーバのドメインはlocalhost:3000です。
config.action_dispatch.default_headers = { 'Access-Control-Allow-Credentials' => 'true', 'Access-Control-Allow-Origin' => 'http://localhost:4000', 'Access-Control-Request-Method' => '*' }
GET,POST,DELETEによるアクセスは問題なく行えるのですが、PUT(PATCH)の際に弾かれてしまいます。
Chromeで検証したところ以下のようなエラーが出力されます。許可しているはずなのですが...
XMLHttpRequest cannot load http://localhost:3000. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4000' is therefore not allowed access. The response had HTTP status code 404.
よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。