Me pregunto si debo usar parámetros matriciales o de consulta en mis URL. Encontré un discussion anterior a ese tema no satisfactorio.Parámetros de matriz de URL en función de los parámetros de solicitud
Ejemplos
- URL con Parámetros de consulta: http://some.where/thing?paramA=1¶mB=6542
- URL con params matriz: http://some.where/thing;paramA=1;paramB=6542
Al principio params matriz vista parecen tener sólo ventajas:
- más legible
- no es necesaria la codificación ni la decodificación de "&" en documentos XML
- URL con "?" no se almacenan en caché en muchos casos; URLs con params matriz se almacenan en caché
- parámetros de la matriz pueden aparecer en cualquier parte del camino y no se limitan a su fin
- parámetros de la matriz pueden tener más de un valor:
paramA=val1,val2
Pero también hay desventajas:
- sólo unos marcos como parámetros de la matriz de soporte JAX-RS
- Cuando un navegador envía un formulario a través de GET, los parametros se convierten en parámetros de consulta. Entonces termina en dos tipos de parámetros para la misma tarea. Para no confundir a los usuarios de los servicios REST y limitar el esfuerzo para los desarrolladores de los servicios, sería más fácil usar siempre params de consulta, en esta área.
Dado que el desarrollador del servicio puede elegir un marco con soporte de param matriz, la única desventaja restante sería que los navegadores crean por parámetros de consulta predeterminados.
¿Hay alguna otra desventaja? ¿Qué harías?
No estoy seguro de cuál es el problema con las URL matriciales. De acuerdo con el artículo de diseño w3c que TBL escribió, era solo una idea de diseño y declara explícitamente que * no * es una característica de la web. Las cosas como las URL relativas no se implementan cuando se usa. Si quieres usarlo, está bien; simplemente no hay una forma estándar de usarlo porque no es un estándar. –
@Steve Pomeroy: este es el artículo que mencionas: http://www.w3.org/DesignIssues/MatrixURIs.html – Marcel
@Marcel: yup. Para aquellos que piensan en las URL de la matriz, tenga en cuenta el "Estado: vista personal" en la parte superior del documento. –