質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

Q&A

1回答

3201閲覧

Laravel5.5 APIコントローラにて認証ユーザ情報を取得したい

SystemRyota

総合スコア24

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

0グッド

0クリップ

投稿2018/02/01 23:02

編集2018/02/02 02:58

php artisan make:authを実行してユーザ関連周りを構築しました。
Http/Controllers/.phpでは$request->user()でユーザ情報を取得できるのですが、
Http/Contollers/api/
.phpだと、nullが返ってきてしまいます。
Auth::user()でも同様です。

apiのコントローラにてユーザ情報を取得し、Modelに渡したいのですが、
どうすれば良いのでしょうか。

routes/api.php

<?php use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; /* |-------------------------------------------------------------------------- | API Routes |-------------------------------------------------------------------------- | | Here is where you can register API routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | is assigned the "api" middleware group. Enjoy building your API! | */ Route::group(['namespace' => 'API'], function() { Route::get('***/***', '***@***'); Route::get('***/***', '***@***'); Route::post('***/***/***', '***@create'); Route::post('***/***/***', '***@save'); Route::post('***/***/***', '***@update'); });
追加

ログインフォームにてログインした後、apiを使用します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

masaya_ohashi

2018/02/02 00:32 編集

ルーティングがどうなっているかを記載してください。
masaya_ohashi

2018/02/02 02:43

ログインフォームでログインしたあと、apiを使う想定ですか?それともapi単体でログイン認証も行って、アクセストークンでapiアクセスする想定ですか?
guest

回答1

0

authミドルウェア内でないとAuthは使えません。

PHP

1Route::group(['middleware' => 'auth:api'], function() { 2 Route::group(['namespace' => 'API'], function() { 3 Route::get('***/***', '***@***'); 4 Route::get('***/***', '***@***'); 5 6 Route::post('***/***/***', '***@create'); 7 Route::post('***/***/***', '***@save'); 8 Route::post('***/***/***', '***@update'); 9 }); 10});

投稿2018/02/02 01:54

masaya_ohashi

総合スコア9206

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SystemRyota

2018/02/02 02:03

ご回答ありがとうございます。 記載頂いた通りに追加して、apiを叩いた所、401エラー({"message":"Unauthenticated."})が返って来てしまいました。 コンストラクタに`$this->middleware('auth')`を追加してみましたが、同様の結果でした。
masaya_ohashi

2018/02/02 02:33

ログインしていないからではないでしょうか?Auth::userが使いたいということはログインしているということではないのですか?
SystemRyota

2018/02/02 17:46

ログインはしています。 恐らく、APIコントローラ部分で認証していないと判定しているのだろうとは思いますが、 対処方法が分からないといった問題になります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問