laravel5.3にてAPIへのアクセス時にユーザー情報を取得したいと思っています。
次のようなAPI用URLに認証済みユーザーがアクセスした場合、ユーザー情報が取得できずNULLが格納されます。
http://hogehoge.jp/**api**/fuga
public function fuga() { $user = \Auth::user(); dump($user); exit; }
同じく、以下のようにAPIを使わず同じクラスへとアクセスした場合は問題なくユーザー情報が取得されています。
public function fuga() { $user = \Auth::user(); dump($user); exit; }
別環境で動かしている同じバージョンのlaravel5.3では上記の両パターンとも問題なく
ユーザー情報が取得できているのですが、現環境にてうまく行かない状態です。
インストールされているLaravelやミドルウェアの設定上で起きている問題ではないかとも思うのですが、
ご存知の方、お知恵をお借りできれば幸いです。
■ 2017-05-12 追記
以前、解消はしておらず、どうも現環境からAPIを呼び出す際の、
X-XSRF-TOKEN の受け渡しがうまくいっていなさそうな印象でした。
その為、
$this->middleware('auth:api');
以下の認証も通ってなさそうです。
<meta name="csrf-token" content="{{ csrf_token() }}"> + $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } });
こちらの内容でajax側へはセット出来ているはずなのですが、
ajax側でのヘッダーの確認、laravel側での受取状況の確認を行う方法などあったりしますでしょうか。
回答1件
あなたの回答
tips
プレビュー