URLは、スキーム・ホスト・パス・クエリ・フラグメントに分かれる
URLは、スキーム、ホスト、パス、クエリ、フラグメントの5つの部分に分かれます。スキームとホストは、どこに接続するかを表します。パスは、何を指しているかを表します。クエリは、?の後ろに続き、キーと値の組でリクエストを絞り込みます。フラグメントは、#の後ろに続き、ブラウザだけが使うため、サーバーには送られません。クエリとフラグメントは、省略できます。
パスパラメーターは、パスの中で、どのリソースを指すかを識別する部分です。/users/42の42がそれにあたります。クエリパラメーターは、そのリソースへのリクエストの振る舞いを変える部分です。?sort=nameがそれにあたります。
そのため、リソースを識別するidはパスに置きます。リソースを識別しない、任意の絞り込みはクエリに置きます。
この課の目標
URLをスキーム・ホスト・パス・クエリ・フラグメントに分解し、あるデータをパスパラメーターとクエリパラメーターのどちらに置くか判断できる。
https://api.example.com/users/42?fields=name,emailのうち、どのユーザーについてのリクエストかを識別しているのはどの部分?