Class | ActionDispatch::Request |
In: |
lib/action_dispatch/http/request.rb
lib/action_dispatch/middleware/cookies.rb lib/action_dispatch/middleware/flash.rb |
Parent: | Rack::Request |
LOCALHOST | = | [/^127\.0\.0\.\d{1,3}$/, "::1", /^0:0:0:0:0:0:0:1(%.*)?$/].freeze | ||
ENV_METHODS | = | %w[ AUTH_TYPE GATEWAY_INTERFACE PATH_TRANSLATED REMOTE_HOST REMOTE_IDENT REMOTE_USER REMOTE_ADDR SERVER_NAME SERVER_PROTOCOL HTTP_ACCEPT HTTP_ACCEPT_CHARSET HTTP_ACCEPT_ENCODING HTTP_ACCEPT_LANGUAGE HTTP_CACHE_CONTROL HTTP_FROM HTTP_NEGOTIATE HTTP_PRAGMA ].freeze | ||
RFC2616 | = | %w(OPTIONS GET HEAD POST PUT DELETE TRACE CONNECT) | List of HTTP request methods from the following RFCs: Hypertext Transfer Protocol — HTTP/1.1 (www.ietf.org/rfc/rfc2616.txt) HTTP Extensions for Distributed Authoring — WEBDAV (www.ietf.org/rfc/rfc2518.txt) Versioning Extensions to WebDAV (www.ietf.org/rfc/rfc3253.txt) Ordered Collections Protocol (WebDAV) (www.ietf.org/rfc/rfc3648.txt) Web Distributed Authoring and Versioning (WebDAV) Access Control Protocol (www.ietf.org/rfc/rfc3744.txt) Web Distributed Authoring and Versioning (WebDAV) SEARCH (www.ietf.org/rfc/rfc5323.txt) PATCH Method for HTTP (www.ietf.org/rfc/rfc5789.txt) | |
RFC2518 | = | %w(PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK) | ||
RFC3253 | = | %w(VERSION-CONTROL REPORT CHECKOUT CHECKIN UNCHECKOUT MKWORKSPACE UPDATE LABEL MERGE BASELINE-CONTROL MKACTIVITY) | ||
RFC3648 | = | %w(ORDERPATCH) | ||
RFC3744 | = | %w(ACL) | ||
RFC5323 | = | %w(SEARCH) | ||
RFC5789 | = | %w(PATCH) | ||
HTTP_METHODS | = | RFC2616 + RFC2518 + RFC3253 + RFC3648 + RFC3744 + RFC5323 + RFC5789 | ||
HTTP_METHOD_LOOKUP | = | Hash.new { |h, m| h[m] = m.underscore.to_sym if HTTP_METHODS.include?(m) } |
Returns the authorization header regardless of whether it was specified directly or through one of the proxy alternatives.
The request body is an IO input stream. If the RAW_POST_DATA environment variable is already set, wrap it in a StringIO.
Provides access to the request‘s HTTP headers, for example:
request.headers["Content-Type"] # => "text/plain"
Returns the original value of the environment‘s REQUEST_METHOD, even if it was overridden by middleware. See request_method for more information.
Read the request \body. This is useful for web services that need to work with raw requests directly.
Returns the HTTP \method that the application should see. In the case where the \method was overridden by a middleware (for instance, if a HEAD request was converted to a GET, or if a _method parameter was used to determine the \method the application should use), this \method returns the overridden value, not the original.
TODO This should be broken apart into AD::Request::Session and probably be included by the session middleware.
Returns the unique request id, which is based off either the X-Request-Id header that can be generated by a firewall, load balancer, or web server or by the RequestId middleware (which sets the action_dispatch.request_id environment variable).
This unique ID is useful for tracing a request from end-to-end as part of logging or debugging. This relies on the rack variable set by the ActionDispatch::RequestId middleware.
Returns true if the "X-Requested-With" header contains "XMLHttpRequest" (case-insensitive). All major JavaScript libraries send this header with every Ajax request.