Qual è la differenza tra request.env ['REQUEST_URI'] e request.env ['REQUEST_PATH'] in Rails? Sembrano sempre contenere lo stesso valore.Qual è la differenza tra request.env ['REQUEST_URI'] e request.env ['REQUEST_PATH']?
16
A
risposta
26
Credo delroth è corretta circa la distinzione, ma in quasi tutti i casi è meglio utilizzare i metodi a richiesta invece di accedere direttamente le variabili ambientali.
request.request_uri restituisce l'URL richiesto compresa la stringa di query e senza il dominio.
request.path restituisce il percorso della richiesta senza stringa di query, dominio e qualsiasi radice relativa (se l'app viene eseguita da una directory diversa da root).
Vedere l'API Rails per ActionDispatch::Request per visualizzare altri metodi utili.
9
Credo che REQUEST_URI
contenga anche gli argomenti di query GET, mentre REQUEST_PATH
no. Ma non ne sono completamente sicuro.
Ad esempio:
REQUEST_URI = /foo/bar/?x=1&y=2
REQUEST_PATH = /foo/bar/
Problemi correlati
- 1. Qual è la differenza tra "env" e "request.env" in Rails Controller?
- 2. qual è la differenza tra $ _SERVER ['REQUEST_URI'] e $ _GET ['q']?
- 3. rails request.env ["HTTP_REFERER"] dando nil su heroku
- 4. Rspec: come specificare request.env in una specifica helper?
- 5. Qual è la differenza tra = e: =
- 6. Qual è la differenza tra Verilog! e ~?
- 7. Qual è la differenza tra? : e ||
- 8. qual è la differenza tra [[], []] e [[]] * 2
- 9. Qual è la differenza tra $ e $$?
- 10. Qual è la differenza tra ("") e (null)
- 11. Qual è la differenza tra dict() e {}?
- 12. Qual è la differenza tra " " e ""?
- 13. Qual è la differenza tra {0} e ""?
- 14. Qual è la differenza tra `##` e `hashCode`?
- 15. Qual è la differenza tra {0} e +?
- 16. Qual è la differenza tra .ToString() e + ""
- 17. qual è la differenza tra:.! e: r !?
- 18. Qual è la differenza tra "è Nessuno" e "== Nessuno"
- 19. Unix: Qual è la differenza tra la fonte e l'esportazione?
- 20. Qual è la differenza tra il callback e la promessa
- 21. Qual è la differenza tra la sezione .got e .got.plt?
- 22. Qual è la differenza tra la lista() e []
- 23. Qual è la differenza tra GHC e la piattaforma Haskell?
- 24. Qual è la differenza tra sé e la finestra?
- 25. Qual è la differenza tra la cartella vim72 e vimfiles?
- 26. Qual è la differenza tra la serratura e RLock
- 27. Qual è la differenza tra la funzione() {}() e function() {}()
- 28. Qual è la differenza tra la crittografia SHA e AES?
- 29. Qual è la differenza tra la [OptionalField] e [NonSerialized]
- 30. Qual è la differenza tra Chisel e Lava e CLaSH?
request_uri non è più un metodo in Rails 3. –