модуль ActionDispatch::Integration::RequestHelpers
Общедоступные методы экземпляров
# File actionpack/lib/action_dispatch/testing/integration.rb, line 39 def delete(path, **args) process(:delete, path, **args) end
Выполняет запрос DELETE с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 63
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 Следует за единственным ответом перенаправления. Если последний ответ не был перенаправлением, будет вызвано исключение. В противном случае перенаправление выполняется по заголовку расположения. Если перенаправление — это перенаправление 307 или 308, то при перенаправлении будет использован тот же HTTP-глагол, иначе будет выполнен запрос GET. Все аргументы передаются в базовый запрос.
Заголовок HTTP_REFERER будет установлен в предыдущий URL.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 15 def get(path, **args) process(:get, path, **args) end
Выполняет запрос GET с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 45 def head(path, **args) process(:head, path, **args) end
Выполняет запрос HEAD с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 51 def options(path, **args) process(:options, path, **args) end
Выполняет запрос OPTIONS с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 27 def patch(path, **args) process(:patch, path, **args) end
Выполняет запрос PATCH с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 21 def post(path, **args) process(:post, path, **args) end
Выполняет запрос POST с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
# File actionpack/lib/action_dispatch/testing/integration.rb, line 33 def put(path, **args) process(:put, path, **args) end
Выполняет запрос PUT с указанными параметрами. Подробнее см. ActionDispatch::Integration::Session#process.
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.