2010-04-15 3 views
0

Je me demande comment vimeo parvient à conserver ses paramètres en utilisant le routage, par exemple dans vimeo, un uri de recherche ressemble à ceci:Comment vimeo route-t-il ses URL?

http://vimeo.com/videos/search:google/, qui renvoie une variable dans ce cas Google.

Ceci est assez facile à faire, peut simplement utiliser des routes et explose en php pour obtenir les données dont vous avez besoin dans un tableau utile, ce qui me renards comment ils ont réussi à obtenir cette URL pour travailler:

http://vimeo.com/videos/search:go/ogle/, Dans mon esprit, comment le routeur sait quand la section se termine, Vimeo semble être capable de le lire comme "go/ogle" mais je ne vois pas comment il peut faire la différence entre une nouvelle section et une existante? pourquoi ne devrait-il pas avoir deux clés une comme recherche: l'autre comme ogle:?

Hope this sens

Répondre

4

Il semble ne pas être si stricte sur l'utilisation / comme séparateur. De bricoler sur l'URL, je suppose qu'il charge le contrôleur videos (si je peux faire quelques suppositions) et utilise quelque chose après search: comme terme de recherche. Après search: il ne semble pas diviser les paramètres.

+0

ouais, je pense que vous avez raison, j'ai essayé d'ajouter un peu de tri bizzarely il ne fonctionne que sur l'actualisation: http://vimeo.com/videos/search:google/y/trier: plus ancien/format: vignette très bizarre, je pense que je voudrais filtrer ces choses sur une recherche de toute façon, car il a tellement de potentiel pour gâcher les choses! Merci pour la réponse :) – studioromeo

1

Cela ressemble à une URL cakePHP pour moi.

Le CakePHP PaginatorHelper utilise un format similaire pour les résultats de la pagination et les données de table de tri, quelque chose comme:

http: // server.com/videos/page:1/sort:name

Jetez un oeil ici et travailler à rebours:

http://api.cakephp.org/view_source/paginator-helper/

+1

Merci pour la réponse :) après y avoir réfléchi, je ne vois pas de problème avec l'utilisation de la chaîne de requête pour des choses comme le tri et la pagination – studioromeo

+0

En fait, c'est le même concept. En interne, cakephp effectue une validation (par exemple, supprimer les barres obliques redondantes) avant de convertir l'URL en http: //.../cake.php? Controller = videos & action = index & search = google (nb, c'est un pseudoexemple!) C'est leur approche des URLs RESTful ... – DrUseful

Questions connexes