在空手道DSL,是有办法具有重定向执行POST请求而不是GET请求?

时间:2019-02-01 21:59:51

标签: karate http-status-code-302

我有以下空手道脚本,默认情况下已打开重定向。

  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

问题是从API获取302之后,下一个请求会自动提交GET请求。我希望它改为提交POST请求。

在cURL中,存在一个允许用户执行此操作的现有参数。见下文。

- post302不要切换到GET以下302

在空手道DSL中有做吗?

1 个答案:

答案 0 :(得分: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