- G
- P
- A
- B
- C
- D
- F
- G
- H
- I
- K
- L
- M
- N
- P
- Q
- R
- S
- X
- ActionDispatch::Http::Cache::Request START:includes
- ActionDispatch::Http::MimeNegotiation START:includes
- ActionDispatch::Http::Parameters START:includes
- ActionDispatch::Http::FilterParameters START:includes
- ActionDispatch::Http::Upload START:includes
- ActionDispatch::Http::URL START:includes
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) } |
TRUSTED_PROXIES | = | %r{ ^127\.0\.0\.1$ | # localhost ^(10 | # private IP 10.x.x.x 172\.(1[6-9]|2[0-9]|3[0-1]) | # private IP in the range 172.16.0.0 .. 172.31.255.255 192\.168 # private IP 192.168.x.x )\. }x |
Which IP addresses are “trusted proxies” that can be stripped from the right-hand-side of X-Forwarded-For. en.wikipedia.org/wiki/Private_network#Private_IPv4_address_spaces. |
Override Rack’s GET method to support indifferent access
Override Rack’s POST method to support indifferent access
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.
Returns the content length of the request as an integer.
Is this a DELETE request? Equivalent to request.request_method == :delete.
Access the contents of the flash. Use flash["notice"] to read a notice you put there or flash["notice"] = "hello" to put a new one.
Is this a GET (or HEAD) request? Equivalent to request.request_method == :get.
Is this a HEAD request? Equivalent to request.method == :head.
Provides access to the request’s HTTP headers, for example:
request.headers["Content-Type"] # => "text/plain"
True if the request came from localhost, 127.0.0.1.
Returns the original value of the environment’s REQUEST_METHOD, even if it was overridden by middleware. See request_method for more information.
Returns a symbol form of the method
Is this a POST request? Equivalent to request.request_method == :post.
Is this a PUT request? Equivalent to request.request_method == :put.
Read the request body. This is useful for web services that need to work with raw requests directly.
Determines originating IP address. REMOTE_ADDR is the standard but will fail if the user is behind a proxy. HTTP_CLIENT_IP and/or HTTP_X_FORWARDED_FOR are set by proxies so check for these if REMOTE_ADDR is a proxy. HTTP_X_FORWARDED_FOR may be a comma- delimited list in the case of multiple chained proxies; the last address which is not trusted is the originating IP.
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.
Returns a symbol form of the request_method
TODO This should be broken apart into AD::Request::Session and probably be included by the session middleware.
Returns the lowercase name of the HTTP server software.
Returns true if the “X-Requested-With” header contains “XMLHttpRequest” (case-insensitive). All major JavaScript libraries send this header with every Ajax request.