Как установить несколько заголовков в HTTP-запросе с помощью Karate

Как установить HTTP-заголовки в Каратэ?

Karate - это инструмент тестирования API с очень всеобъемлющим и простым для понимания DSL.

В этом посте мы покажем, как установить несколько заголовков в заголовочной части запроса.


Примеры включают User-Agent, Content-Type, Accept-Encoding, Connection и т. Д.

Есть несколько способов установить заголовки запросов в Karate:




Использование заголовка

Вы можете использовать header ключевое слово несколько раз в запросе



Given header Content-Type = 'text/xml;charset=ISO-8859-1'
And header Accept-Encoding = 'gzip,deflate'
And header Connection = 'Keep-Alive'
And header Expect = '100-continue'
And header User-Agent = 'Mozilla/4.0(compatible;IE;GACv7. 1. 5192. 22378)'
And header Host = 'localhost'
When url 'http://www.example.com'
And request { some: 'data' }
When method post
Then status 200


Использование заголовков

Вы также можете определить несколько заголовков в переменной, а затем использовать их в headers ключевое слово для отправки всех заголовков запроса

* def req_headers = {Content-Type: 'text/xml;charset=ISO-8859-1', Connection: 'Keep-Alive', User-Agent: 'Mozilla/4.0(compatible;IE;GACv7. 1. 5192. 22378)'} Given headers req_headers
And url 'http://www.example.com'
And request { some: 'data' }
When method post
Then status 200

Использование заголовков конфигурации

Другой способ установки заголовков запроса - использовать configure headers

* configure headers = {Content-Type: 'text/xml;charset=ISO-8859-1', Connection: 'Keep-Alive', User-Agent: 'Mozilla/4.0(compatible;IE;GACv7. 1. 5192. 22378)'} Given url 'http://www.example.com' And request { some: 'data' } When method post Then status 200