web-dev-qa-db-fra.com

Quand utiliser les paramètres de requête par rapport aux paramètres de matrice?

Paramètres de requête : http://example.com/apples?order=random&color=blue

Paramètres de matrice : http://example.com/apples;order=random;color=blue

  1. Quand faut-il utiliser les paramètres de requête par rapport aux paramètres de matrice?
  2. Pourquoi les paramètres de matrice peuvent-ils être utilisés au milieu d'une URL, mais pas les paramètres de requête? Par exemple: http://example.com/apples;order=random;color=blue/2006/archive
  3. Si les paramètres de matrice sont un surensemble de paramètres de requête, pourquoi ne pas les utiliser tout le temps?

Vous pouvez en savoir plus sur les paramètres de matrice ici: http://www.w3.org/DesignIssues/MatrixURIs.html

90
Gili

Les différences entre les paramètres de matrice et les paramètres de requête sont bien plus qu'une simple convention.

Les principales différences sont:

  • les URL avec des paramètres de requête ne verront pas leur réponse mise en cache par les intermédiaires/mandataires (pour le moment)
  • les paramètres de la matrice peuvent apparaître n'importe où dans le chemin
  • le calcul de l'uri relatif est différent
  • les paramètres de requête sont généralement utilisés abusivement pour ajouter de nouveaux verbes au lieu d'utiliser des méthodes existantes sur les ressources
  • les paramètres de matrice ne sont pas des ressources, ce sont des aspects qui aident à référencer une ressource dans un espace d'information difficile à représenter dans une hiérarchie
  • Je l'ai écrit plus en détail et avec plus de références dans Requête vs paramètres de matrice

    110
    bdargan