外部のLaravelサーバに対してCORSエラーを回避してAPIリクエストを送る

どうも、シローです。

異なるサーバの間でAPIリクエストを送るときには、CORSポリシーに引っかかってリクエストが弾かれる場合があります。

今回は、Laravelのサーバに対してAPIリクエストを送るときにCORSエラーを回避する方法をまとめます。

 

実行環境

OS Ubuntu 16.04
Laravel Version 5.7
PHP Version 7.2

システム構成図

Firebaseにホスティングされているサイトから、Laravelのサーバに対してAPIリクエストを発行しますので、

上の図のような構成になってます。

Composerでlaravel-corsをインストール

Laravelに対してのCORSのリクエストを回避するためのモジュールとしてlaravel-corsをインストールします。

Laravelプロジェクト上でCORSエラー回避のための設定を行う

laravel-corsをインストールしたら、 Kernel.phpにサーバにAPIをリクエストするときに必ずlaravel-corsを使用する設定を追加します。

その次にartisanコマンドで設定ファイルをconfig.phpとして作成します。

作成したらconfig.phpを編集して、firebaseのプロジェクトのホストを追記します。

これで設定は完了です。

あとは、クライアントサイドからLaravelサイドにリクエストを送ってみたら、CORSエラーは回避できていると思います。

(クライアントサイドからAPIリクエストを送る実装は割愛します)


タグ:

外部のLaravelサーバに対してCORSエラーを回避してAPIリクエストを送る

どうも、シローです。

異なるサーバの間でAPIリクエストを送るときには、CORSポリシーに引っかかってリクエストが弾かれる場合があります。

今回は、Laravelのサーバに対してAPIリクエストを送るときにCORSエラーを回避する方法をまとめます。

 

実行環境

OS Ubuntu 16.04
Laravel Version 5.7
PHP Version 7.2

システム構成図

Firebaseにホスティングされているサイトから、Laravelのサーバに対してAPIリクエストを発行しますので、

上の図のような構成になってます。

Composerでlaravel-corsをインストール

Laravelに対してのCORSのリクエストを回避するためのモジュールとしてlaravel-corsをインストールします。

Laravelプロジェクト上でCORSエラー回避のための設定を行う

laravel-corsをインストールしたら、 Kernel.phpにサーバにAPIをリクエストするときに必ずlaravel-corsを使用する設定を追加します。

その次にartisanコマンドで設定ファイルをconfig.phpとして作成します。

作成したらconfig.phpを編集して、firebaseのプロジェクトのホストを追記します。

これで設定は完了です。

あとは、クライアントサイドからLaravelサイドにリクエストを送ってみたら、CORSエラーは回避できていると思います。

(クライアントサイドからAPIリクエストを送る実装は割愛します)

タグ: