一覧画面で絞り込み処理は method=”GET” にしてほしい理由

  • URLをコピーしました!
フューチャー技術ブログ
HTTP検索条件、GETにするか?POSTにするか? | フューチャー技術ブログ はじめにTIG DXユニット 1真野です。 RESTfullとかRESTishな方針でWebA PIの横断検索を設計する際にチーム内で方針について議論したやり取りの備忘記事です。 注意としてB2...

こちらの記事のように、すっごくまじめに検討をしたわけではないので、なんとなくではありますが、なんとなくを言語化したいと思います。一覧画面を作った時の絞り込みの form は、 <form method="GET" にしてほしいです。理由は3つあります。

Laravelで構築したときに限らず、どんなWebサービスの時でも、できれば GET にしてほしいです!

目次

一覧画面や検索画面の絞り込み処理の method を GET にしてほしい3つの理由

1. ブラウザバックで戻れるようにする

ブラウザの戻るボタンを使ってページを戻ることがあると思います。

もし直前処理が POST だと、ブラウザバックしたときにこのような画面が出て、お客様を混乱させることがあります。書いてあるとおりで、再読み込みすれば画面は戻りますが、出てきた瞬間はびっくりするかもしれません。

検索画面はいったりきたりすることも多いので、 method="GET" にすることでこの画面を表示させないようにしたいかなと思います。

2. URLをブックマークできる

毎回絞り込み条件を設定しなくても済むように、URLをブックマークすることができます。
めっちゃ便利です。

3. routesの定義を減らせる

GETとPOST両方で routes/web.php を定義すると、Controllerの処理も GET と POST で分岐が必要になると思います
GETだけなら、1ルートで済みますので、処理が簡単になります。

まとめ

いろいろ書きましたが、一覧ページ・検索ページを作るときは method="GET" で作っておけばだいたい問題無いです!
もしヘッダーにキーワード検索をつけたりするときも、GETで作っておけば、一覧画面の絞り込みと共通処理で対応できるでしょう!

ツチノコテクノロジーに開発・保守を発注しませんか?

Laravel・Flutterの開発・保守をツチノコテクノロジーに発注しませんか?

まずはZOOMで打ち合わせ

お申し込みはこちら

ツチノコテクノロジーでは一緒に働く仲間を募集しています!

完全リモートで働きたい方へ!

詳しくは以下をご覧ください。

ツチノコテクノロジー採用サイト

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

yfukudaのアバター yfukuda 取締役・システムエンジニア

ツチノコテックアカデミアの記事は、社内で誰かが質問してくれたことに回答したときに、ついでに記載しています!(^^)/
みんなの悩みを共有すれば、きっと誰かの役に立つと信じて更新しています!

目次