リクエスト(Request)のあれこれ

Laravelで、リクエスト(Request)というのは、ブラウザを通してユーザーから送られる情報をすべて含んでいるオブジェクトのことです。例えば、会員登録のフォームなら、画面でユーザーが入力したEメール、パスワード、名前、住所だけでなく、何のブラウザを使用したか(User Agent)、どのIPから送られたか、どのURLからアクセスしたかなど、また、会員ログイン後の画面なら、会員認証において保存されたクッキーもブラウザを介して、リクエストに含まれます。 リクエストの使用 リクエストの代表的な使用は、以下のようにコントローラのメソッドのパラメータです。以下は、Laravelのドキュメントからのコードから引用からですが、会員登録画面でのPOSTされたときにコールされるstoreメソッドです。 UserController.php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { /** * 新規ユーザーの作成 * * @param Request $request * @return Response */ public function store(Request $request) { $name = $request->input('name'); // } } また、Httpのミドルウェアでも、handle()のパラメータとして利用されています。 RedirectIfAuthenticated.php use Closure; use Illuminate\Support\Facades\Auth; class RedirectIfAuthenticated { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @param string|null $guard * @return mixed */ public function handle($request, Closure $next, $guard = null) { if (Auth::guard($guard)->check()) { return redirect('/home'); } return $next($request); } } ミドルウェアと言えば、コントローラのコンストラクタでも$requestにアクセスが可能です。

Laravelの開発に必須な私のツール

Laravelをウェブアプリの開発の使い始めてから、もうかれこれ5年になろうとしています。Laravelのバージョンも4から5になりさらに進化し続けています。こう経験が長くなると、使用する開発ツールも年々増えてきます。その中で、もうこれがないと開発できない!というものもいくつかあります。

Laravelの日本語のレポジトリ(Laravel 5.5)

Laravelの日本語のリポジトリをLaravel5.5に更新しました。もうLaravel5.6がリリースされていますが、Laravel5.5は長期サポート(2年間)のバージョンなゆえに重要です。前回同様に、以下インストールの手順です。

ユーザー認証のテスト(4) Laravel 5.4 パスワードリセット

今回はパスワードのリセットのテストです。 パスワードのリセットは、以下のステップがあります。 パスワードリセットのリクエスト画面へ行き、Eメールアドレスを入力してリセットをリクエスト メールでパスワードリセットのトークン付きのURLを受信 パスワードリセット画面へ行きパスワードをリセット

ユーザー認証のテスト(2) Laravel 5.4 ログイン

前回は、 ログイン画面にアクセスできる ログインしないで、ホームページにアクセスするとログイン画面にリダイレクトされる のテストを作成しました。 今回は、同じくログイン画面において以下のテストを作成します。 登録されているユーザーのEメールとパスワードでログインできる 間違ったパスワードでログインした場合、ログイン失敗してエラーが出力される

ユーザー認証のテスト(1) Laravel 5.4

Laravelでのユーザー認証は私のブログの中では最も人気のあるトピックです。今回は、私のLaravelの日本語のレポジトリ(Laravel 5.4)のコードをもとに、ユーザー認証のテストに取り組んでいきます。

Laravel Shiftでバージョンを更新

Laravelのメジャーのバージョンは、以下のように、ほぼ年に2回のペースでリリースされています。 頻繁に更新されることは、Laravelがいつもアクティブである証拠でとても良いのですが、追い付いていくのが大変なのが現状です。

もっとティンカー(tinker)を使おう!

今年最後の投稿です。まだまだ投稿のネタはたくさんあります。来年も楽しみに! tinkerに関しては、以前に紹介していますが、私には現在もなくてはならないコマンドラインツール。 このツール、実は機能が豊富にあるということ最近気づきました。ますます好きになりました。