1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

ActionWebService WSDL generation ignores HTTP_X_FORWARDED_HOST

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4891 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
Kent Sibilev 2006-09-01 02:18:52 +00:00
parent 7749c9c220
commit b5521a2651
3 changed files with 6 additions and 6 deletions

View file

@ -1,5 +1,7 @@
*SVN*
* ActionWebService WSDL generation ignores HTTP_X_FORWARDED_HOST [Paul Butcher <paul@paulbutcher.com>]
* Tighten rescue clauses. #5985 [james@grayproductions.net]
* Fixed XMLRPC multicall when one of the called methods returns a struct object. [Kent Sibilev]
@ -14,7 +16,7 @@
* Fix test database name typo. [Marcel Molina Jr.]
*1.1.2* (April 9th, 2005)
*1.1.2* (April 9th, 2006)
* Rely on Active Record 1.14.2

View file

@ -167,7 +167,7 @@ module ActionWebService # :nodoc:
private
def base_uri
host = request.env['HTTP_HOST'] || request.env['SERVER_NAME'] || 'localhost'
host = request.host_with_port
relative_url_root = request.relative_url_root
scheme = request.ssl? ? 'https' : 'http'
'%s://%s%s/%s/' % [scheme, host, relative_url_root, self.class.controller_path]

View file

@ -121,17 +121,15 @@ class TC_DispatcherActionControllerSoap < Test::Unit::TestCase
end
location = definitions.services[0].ports[0].soap_address.location
if controller.is_a?(DelegatedController)
assert_match %r{http://localhost/dispatcher_test/delegated/test_service$}, location
assert_match %r{http://test.host/dispatcher_test/delegated/test_service$}, location
elsif controller.is_a?(DirectController)
assert_match %r{http://localhost/dispatcher_test/direct/api$}, location
assert_match %r{http://test.host/dispatcher_test/direct/api$}, location
end
definitions.collect_complextypes
end
def ensure_valid_wsdl_action(controller)
test_request = ActionController::TestRequest.new({ 'action' => 'wsdl' })
test_request.env['REQUEST_METHOD'] = 'GET'
test_request.env['HTTP_HOST'] = 'localhost'
test_response = ActionController::TestResponse.new
wsdl = controller.process(test_request, test_response).body
ensure_valid_wsdl(controller, wsdl, DispatcherTest::WsdlNamespace)