method
request_uri
v2.2.1 -
Show latest stable
- Class:
ActionController::AbstractRequest
request_uri()public
Returns the request URI, accounting for server idiosyncrasies. WEBrick includes the full URL. IIS leaves REQUEST_URI blank.
# File actionpack/lib/action_controller/request.rb, line 346
def request_uri
if uri = @env['REQUEST_URI']
# Remove domain, which webrick puts into the request_uri.
(%r{^\w+\://[^/]+(/.*|$)$} =~ uri) ? $1 : uri
else
# Construct IIS missing REQUEST_URI from SCRIPT_NAME and PATH_INFO.
uri = @env['PATH_INFO'].to_s
if script_filename = @env['SCRIPT_NAME'].to_s.match(%r{[^/]+$})
uri = uri.sub(/#{script_filename}\//, '')
end
env_qs = @env['QUERY_STRING'].to_s
uri += "?#{env_qs}" unless env_qs.empty?
if uri.blank?
@env.delete('REQUEST_URI')
else
@env['REQUEST_URI'] = uri
end
end
end Related methods
- Instance methods
- accepts
- body
- body_stream
- cache_format
- content_length
- content_type
- cookies
- delete?
- domain
- etag_matches?
- format
- format=
- fresh?
- get?
- head?
- headers
- host
- host_with_port
- if_modified_since
- if_none_match
- method
- not_modified?
- parameters
- path
- path_parameters
- path_parameters=
- port
- port_string
- post?
- protocol
- put?
- query_parameters
- query_string
- raw_host_with_port
- raw_post
- referer
- referrer
- remote_addr
- remote_ip
- request_method
- request_parameters
- request_uri
- reset_session
- server_software
- session
- session=
- ssl?
- standard_port
- subdomains
- symbolized_path_parameters
- template_format
- url
- xhr?
- xml_http_request?
- Class methods
- relative_url_root=
- Protected methods
-
content_type_with_parameters -
content_type_without_parameters - Private methods
-
clean_up_ajax_request_body! -
extract_content_type_without_parameters -
extract_multipart_boundary -
get_typed_value -
parse_multipart_form_parameters -
parse_query_parameters -
parse_request_parameters -
read_multipart -
content_type_from_legacy_post_data_format_header -
named_host? -
parse_formatted_request_parameters