[解決済み] 検索のためのRESTfulなURL設計
2022-03-20 19:20:27
質問
検索をRESTfulなURLとして表現する合理的な方法を探しています。
設定です。私は2つのモデル、車とガレージを持っており、車はガレージの中にあることができます。だから、私のURLは次のようになります。
/car/xxxx
xxx == car id
returns car with given id
/garage/yyy
yyy = garage id
returns garage with given id
車は単体で存在することもあれば(それゆえ/car)、ガレージの中に存在することもあります。例えば、あるガレージにあるすべての車を表現するには、どのような方法が適切でしょうか?次のようなものです。
/garage/yyy/cars ?
ガレージyyyとzzzの車の組合わせはどうでしょうか?
ある属性を持つ車の検索を表現するのに適した方法は何でしょうか?例えば、「4ドアの青いセダンをすべて表示する。
/car/search?color=blue&type=sedan&doors=4
それとも、/cars にすべきでしょうか?
検索("search")の使用は不適切に思えますが、何か良い方法/用語はありますか?ということでしょうか?
/cars/?color=blue&type=sedan&doors=4
検索パラメータは、PATHINFOとQUERYSTRINGのどちらに含まれるべきですか?
要するに、モデル横断的なREST urlの設計と、検索に関するガイダンスを探しているのです。
[更新】Justinの回答は気に入っていますが、彼はマルチフィールド検索のケースをカバーしていません。
/cars/color:blue/type:sedan/doors:4
といった感じでしょうか。からどうすれば
/cars/color/blue
をマルチフィールドケースに変更しますか?
どのように解決するのですか?
検索にはquerystringを使う。これは完全にRESTfulです。
/cars?color=blue&type=sedan&doors=4
通常のクエリ文字列の利点は、標準的で広く理解されていることと、form-getから生成できることです。
関連
-
[解決済み] リソースが既に存在する場合の POST に対する HTTP レスポンスコード
-
[解決済み] RESTful WebServiceにファイルや関連データをJSONで投稿する。
-
[解決済み] RESTリソースの命名規則はSingularとPluralのどちらを使用すべきですか?
-
[解決済み] RESTとRESTfulの違いは何ですか?
-
[解決済み] URLクエリパラメータを含むHTTP POST -- 良いアイデアかどうか?
-
[解決済み] cURLを使ってCookieを送信するには?
-
[解決済み】RESTful 認証
-
[解決済み] HTTP DELETEでリソースを2回目に削除したときのステータスコード
-
[解決済み] リソースとエンドポイントの違いは何ですか?
-
[解決済み] HATEOAS(REST-architecture)の実例集 [終了しました]。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] SOAPとRESTの比較(相違点)
-
[解決済み] RESTリソースの命名規則はSingularとPluralのどちらを使用すべきですか?
-
[解決済み] URLクエリパラメータを含むHTTP POST -- 良いアイデアかどうか?
-
[解決済み] cURLを使ってCookieを送信するには?
-
[解決済み] レスポンスコードが200または201で、内容がPOSTのリクエストを作成します。
-
[解決済み] リソースとエンドポイントの違いは何ですか?
-
[解決済み] RESTとは?若干の混乱【終了
-
[解決済み] RESTを使った複数レコードの削除
-
[解決済み] HATEOAS(REST-architecture)の実例集 [終了しました]。
-
[解決済み] REST - ボディにIDを入れるかどうか?