модуль ActionDispatch::Integration::RequestHelpers
Открытые методы экземпляра
# File actionpack/lib/action_dispatch/testing/integration.rb, line 42 def delete(path, **args) process(:delete, path, **args) end
Выполняет запрос DELETE с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 65
def follow_redirect!(headers: {}, **args)
raise "not a redirect! #{status} #{status_message}" unless redirect?
method =
if [307, 308].include?(response.status)
request.method.downcase
else
:get
end
if [ :HTTP_REFERER, "HTTP_REFERER" ].none? { |key| headers.key? key }
headers["HTTP_REFERER"] = request.url
end
public_send(method, response.location, headers: headers, **args)
status
end Выполняет переход по одному ответу с перенаправлением. Если последний ответ не был перенаправлением, будет вызвано исключение. В противном случае перенаправление выполняется на адрес, указанный в заголовке location. Если перенаправление имеет код 307 или 308, при перенаправлении используется тот же HTTP-метод; в противном случае выполняется запрос GET. Все аргументы передаются базовому запросу.
Заголовку HTTP_REFERER присваивается значение предыдущего URL.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 18 def get(path, **args) process(:get, path, **args) end
Выполняет запрос GET с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 48 def head(path, **args) process(:head, path, **args) end
Выполняет запрос HEAD с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 54 def options(path, **args) process(:options, path, **args) end
Выполняет запрос OPTIONS с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 30 def patch(path, **args) process(:patch, path, **args) end
Выполняет запрос PATCH с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 24 def post(path, **args) process(:post, path, **args) end
Выполняет запрос POST с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 36 def put(path, **args) process(:put, path, **args) end
Выполняет запрос PUT с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.