[解決済み] REST API: カスタム HTTP ヘッダーと URL パラメータ
質問
REST API のリクエスト部分でカスタム HTTP ヘッダを使用するのはどのような場合ですか?
例
を使うことはありますか?
GET /orders/view
(custom HTTP header) CLIENT_ID: 23
の代わりに
GET /orders/view/client_id/23 or
GET /orders/view/?client_id=23
どのように解決するのですか?
URL はリソースそのものを表します。 クライアント("client")は操作可能なリソースなので、ベースURLの一部である必要があります。
/orders/view/client/23
.
パラメータは、リソースへのアクセスをパラメータ化するためのものです。 これは特に投稿や検索で活きてきます。
/orders/find?q=blahblah&sort=foo
. パラメータとサブリソースの間には微妙な境界線があります。
/orders/view/client/23/active versus /orders/view/client/23?show=active
. 私は、サブリソースのスタイルを推奨し、パラメータは検索用に確保します。
各エンドポイントは状態遷移を表すので(ニーモニックにすると)、カスタムヘッダーは、リソースの名前(URL)、リソースの状態(ボディ)、リソースに直接影響するパラメータ(パラメータ)に関係しないものにのみ使用されるべきです。 つまり、カスタムヘッダにはリクエストに関する真のメタデータが残されているのです。
HTTP には、必要とされるほとんどのものをカバーする、非常に幅広いヘッダーの選択肢があります。 カスタム ヘッダーが登場するのは、ユーザーの代理で動作するシステム間のリクエストの場合です。 プロキシシステムはユーザーを検証し、quot を追加します。
X-User: userid
をヘッダに追加し、エンドポイントをヒットするためにシステムのクレデンシャルを使用します。 受信側のシステムは、システム認証情報がユーザーの代わりに行動することを許可されていることを検証し、その後、ユーザーがアクションを実行することを許可されていることを検証します。
関連
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み] HTTP GET(リクエストボディ付き
-
[解決済み] java.net.URLConnectionを使用してHTTPリクエストを発生させ処理する方法
-
[解決済み] HTTP POSTリクエストでは、どのようにパラメータが送信されるのですか?
-
[解決済み] カスタムHTTPヘッダー:命名規則
-
[解決済み] HttpClientリクエストのContent-Typeヘッダーはどのように設定するのですか?
-
[解決済み] 検証失敗または重複が無効な場合のREST HTTPステータスコード
-
[解決済み] Cache-Control: max-age=0とno-cacheの違いは何ですか?
-
[解決済み] HTTPファイルアップロードの仕組みを教えてください。
-
[解決済み] URLクエリパラメータを含むHTTP POST -- 良いアイデアかどうか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] ExpressJSのX-Powered-Byを削除する方法 [重複]。
-
[解決済み] IISファイルのダウンロードがハングアップ/タイムアウトする - sc-win32-status = 64
-
[解決済み] HTTPSヘッダーは暗号化されていますか?
-
[解決済み] ブラウザのCookieドメインはどのように機能するのですか?
-
[解決済み] HTTPヘッダーの最大値?
-
[解決済み] ETagとヘッダーエクスパイアの比較
-
[解決済み] application/x-www-form-urlencoded or multipart/form-data?
-
[解決済み】no-cacheとmust-revalidateの違いについて
-
[解決済み】ユーザーエージェント文字列の大きさはどれくらいになりますか?
-
[解決済み】HTTPの "Content-Type "ヘッダーのすべての可能な値は何ですか?