В DSL карате есть способ заставить перенаправления выполнять запрос POST вместо запроса GET?
У меня есть следующий скрипт карате, который по умолчанию имеет перенаправления включены.
Scenario: First Test
Given path 'somePath'
And request ''
And header Content-Type = 'text/html'
And param _csrf = csrf
And param username = 'username'
And param password = 'password'
When method post
Then status 200
Проблема в том, что после получения 302 от API, следующий запрос автоматически отправляет запрос GET. Я хотел бы отправить запрос POST.
в cURL есть существующий параметр, который позволяет пользователям делать это. увидеть ниже.
--post302 Не переключаться на GET после следующих 302
есть ли вообще сделать это в карате DSL?
1 ответ
Да, пожалуйста, прочитайте документы для configure folowRedirects
, Существует также пример того, как читать Location
Заголовок ответа, чтобы вручную сделать запрос, который вы хотите.
Scenario: get redirects can be disabled
* configure followRedirects = false
Given path 'redirect'
When method get
Then status 302
And match header Location == demoBaseUrl + '/search'
* def location = responseHeaders['Location'][0]
Given url location