Quelle est la différence entre request.env ['REQUEST_URI'] et request.env ['REQUEST_PATH']?
Quelle est la différence entre la requête.env['REQUEST_URI'] et de la demande.env['REQUEST_PATH'] dans les Rails? Ils semblent toujours contenir la même valeur.
source d'informationauteur Tom Lehman
Vous devez vous connecter pour publier un commentaire.
Je crois delroth est correct à propos de la distinction, cependant, dans presque tous les cas, il est préférable d'utiliser les méthodes de la Demande au lieu d'accéder directement à des variables d'environnement.
demande.request_uri retourne l'url demandée, y compris la chaîne de requête et sans le domaine.
demande.chemin retourne le chemin d'accès de la demande sans que la chaîne de requête, de domaine et de tout autre parent de la racine (si votre application s'exécute à partir d'un répertoire autre que root).
Voir les Rails de l'API pour ActionDispatch::Demande pour voir d'autres méthodes utiles.
Je crois
REQUEST_URI
contient également de la requête GET arguments, alors queREQUEST_PATH
ne le font pas. Mais je ne suis pas complètement sûr de ce que.Par exemple :
REQUEST_URI = /foo/bar/?x=1&y=2
REQUEST_PATH = /foo/bar/