Was ist der Unterschied zwischen request.env ['REQUEST_URI'] und request.env ['REQUEST_PATH'] in Rails? Sie scheinen immer den gleichen Wert zu enthalten.Was ist der Unterschied zwischen request.env ['REQUEST_URI'] und request.env ['REQUEST_PATH']?
16
A
Antwort
26
Ich glaube delroth über den Unterschied richtig ist, aber in fast allen Fällen ist es besser, die Methoden in Antrag zu verwenden, anstatt direkt den Zugriff auf die Umgebungsvariablen.
request.request_uri gibt die angeforderte URL einschließlich der Abfragezeichenfolge und ohne die Domäne zurück.
request.path gibt den Pfad der Anforderung ohne Abfragezeichenfolge, Domäne und beliebigem relativen Stamm zurück (wenn Ihre App von einem anderen Verzeichnis als root ausgeführt wird).
Weitere nützliche Methoden finden Sie in der Rails API für ActionDispatch::Request.
9
Ich glaube, REQUEST_URI
enthält auch Abfrage GET-Argumente, während REQUEST_PATH
nicht. Aber ich bin mir da nicht ganz sicher.
Zum Beispiel:
REQUEST_URI = /foo/bar/?x=1&y=2
REQUEST_PATH = /foo/bar/
Verwandte Themen
- 1. Was ist der Unterschied zwischen 'env' und 'request.env' im Rails Controller?
- 2. Warum gibt request.env ['REMOTE_ADDR'] zwei IPs zurück?
- 3. Ruby on Rails - request.env ['HTTP_REFERER'] gibt null zurück
- 4. Was ist der Unterschied zwischen `==` und `ist`?
- 5. Rspec: Wie spezifiziere ich request.env in einer Helper-Spezifikation?
- 6. Was ist der Unterschied zwischen:.! und: r !?
- 7. Was ist der Unterschied zwischen Difftime und '-'?
- 8. Was ist der Unterschied zwischen $ und $$?
- 9. Was ist der Unterschied zwischen Verilog! und ~?
- 10. was ist der Unterschied zwischen [[], []] und [[]] * 2
- 11. Was ist der Unterschied zwischen/* ... */und/** ... */
- 12. Was ist der Unterschied zwischen `&` und `ref`?
- 13. Was ist der Unterschied zwischen $ (...) und `...`
- 14. Was ist der Unterschied zwischen .Equals und ==
- 15. Was ist der Unterschied zwischen "$^N" und "$ +"?
- 16. Was ist der Unterschied zwischen + = und = +?
- 17. Was ist der Unterschied zwischen? und ? = Nil
- 18. Was ist der Unterschied zwischen $ (()) und Ausdruck?
- 19. Was ist der Unterschied zwischen:
- 20. Was ist der Unterschied zwischen der JSP und der JSTL?
- 21. Was ist der Unterschied zwischen NetFx45WebLink und NetFx45RedistLink ist
- 22. Was ist der Unterschied zwischen PS1 und PROMPT_COMMAND ist
- 23. Was ist der Unterschied zwischen x86 und x64 ist
- 24. Was ist der Unterschied zwischen „ist None“ und „== None“
- 25. Was ist der Unterschied zwischen DISPATCH_QUEUE_CONCURRENT und DISPATCH_QUEUE_SERIAL ist
- 26. Was ist der Unterschied zwischen Task.Run ist() und Task.Factory.StartNew()
- 27. Was ist der Unterschied zwischen RewriteRule ist und umleiten 301
- 28. Was ist der Unterschied zwischen ist - (void) und + (void) Methoden
- 29. Was ist der Unterschied zwischen ist HttpResponseMessage und HttpResponseException
- 30. Was ist der Unterschied zwischen nohup und kaufmännisches Und
request_uri ist in Rails 3 keine Methode mehr. –