предисловие
Отладка интерфейса является важным навыком для каждого специалиста по разработке программного обеспечения.Завершение проекта может занять больше времени для тестирования и отладки интерфейса, чем фактическое время разработки и написания, которое является почти ежедневным рабочим элементом для каждой разработки. Так называемая хорошая работа должна сначала отточить свои инструменты.Прежде чем вы почувствуете истинный аромат IDEA REST, postman (плагин для Chrome) действительно является очень хорошим выбором, с полной функцией клиента REST и функцией истории запросов. Но когда используется IDEA REST, почтальон может потеряться, потому что IDEA REST Client имеет все функции почтальона, а есть функции, которых у почтальона нет, продолжайте смотреть вниз.
От почтальона до клиента IDEA REST
Есть несколько причин истинного закона аромата:
- Прежде всего, доступны все функции postman IDEA REST Client, такие как консоль REST Client и исторические записи запросов.
- Во-вторых, если вы можете выполнять разработку и отладку в одном производственном инструменте, зачем переключаться на другой инструмент?
- Затем IDEA REST Client также поддерживает функцию различения конфигурации среды, а также возможность утверждения ответа интерфейса и обработки по сценарию.
- Конфигурация запроса IDEA REST Client может быть описана конфигурацией файла, поэтому ею можно поделиться с проектом и участниками проекта.
Клиентская консоль IDEA REST
После открытия Tools -> HTTP Client -> Test RESTFUL Web Service на панели инструментов верхнего уровня интерфейс консоли IDEA REST Client выглядит следующим образом:
Видно, что отображаемая в этой консоли функциональная область ничем не отличается от postman, включая метод запроса, заполнение параметров запроса и заголовков запроса.В частности, если метод запроса Авторизация: Базовый Если вы используете метод аутентификации, можно нажать кнопку, показанную на рисунке ниже, и появится окно для заполнения имени пользователя и пароля, которые после заполнения будут автоматически добавлены в шапку Авторизация.
Запись запроса истории
IntelliJ IDEA автоматически сохраняет 50 последних выполненных запросов в файл http-requests-log.http, который хранится в каталоге проекта .idea/httpRequests/. Используя историю запросов, вы можете быстро перейти к конкретному ответу и сделать запрос снова. Содержимое файла показано на рисунке ниже.Чтобы сделать запрос еще раз, просто нажмите кнопку запуска. Если запрос сделан снова из истории запросов, ссылка на информацию о его выполнении и вывод ответа будет добавлена в начало файла истории запросов.
Создайте сценарий HTTP-запроса
Приведенная выше запись истории представляет собой полный сценарий запроса IDEA REST Client. Если вы активируете его из консоли, вы можете напрямую скопировать файл записи запроса истории и поместить его в проект как сценарий HTTP-запроса, а также поделиться им с другими участниками. , Если нет, вы также можете напрямую создать новый файл с расширением .http или .rest, и IDEA автоматически распознает его как сценарий HTTP-запроса.
грамматическая часть
### 演示POST请求
POST {{baseUrl}}}get?show_env=1
Accept: application/json
{
"name":"a"
}
### 演示GET请求
GET {{baseUrl}}}/post
Content-Type: application/x-www-form-urlencoded
id=999&value=content
Во-первых, каждое тело запроса отделяется тремя хеш-ключами ###, а затем параметры URL-адреса запроса и заголовка располагаются рядом друг с другом.Параметры запроса, будь то параметр тела POST или параметр параметра GET, должны быть завернутым.
Экологическое отличие
Если вы будете внимательны, вы можете обнаружить, что код в приведенном выше примере не имеет реального адреса запроса. Вместо этого он является заполнителем {{baseUrl}}. Вот где действительно пахнет IDEA REST Client. Он поддерживает получение его из указанный файл конфигурации.Параметры конфигурации, связанные со средой, не только baseUrl могут быть заменены заполнителями, но некоторые запрошенные параметры могут быть выделены файлами конфигурации, если они относятся к среде интерфейса.
Сначала создайте файл с именем http-client.private.env.json в том же каталоге, что и скрипт .http, а затем содержимое будет следующим: Значение ключа первого уровня используется для различения среды, такой как dev, uat, pro и т. д. Объект в среде — это переменная среды, которую можно получить в HTTP-запросе.Вы можете напрямую получить параметры, настроенные здесь, через заполнитель {{xx}} в запрошенном HTTP-скрипте.
{
"uat": {
"baseUrl": "http://gateway.xxx.cn/",
"username": "",
"password": ""
},
"dev": {
"baseUrl": "http://localhsot:8888/",
"username": "",
"password": ""
}
}
Затем, когда вы решите выполнить запрос, IDEA позволит вам выбрать конфигурацию среды выполнения, например:
утверждение результата
Клиент IDEA REST может выполнять обработку утверждений по сценарию для значения ответа интерфейса и немедленно переходить от инструмента отладки интерфейса к инструменту тестирования, например:
### Successful test: check response status is 200
GET https://httpbin.org/status/200
> {%
client.test("Request executed successfully", function() {
client.assert(response.status === 200, "Response status is not 200");
});
%}
Временное хранение значения результата
Представьте себе такой сценарий: когда системе необходимо пройти аутентификацию для доступа, если вы используете postman, вы сначала получаете доступ к интерфейсу входа в систему, а затем, после получения токена, вручную вставляете и копируете его в параметр заголовка нового интерфейса отладки? Слишком много проблем, IDEA REST Client также имеет действительно ароматную функцию, которая может отлично решить эту проблему, см. Следующий скрипт:
### 演示POST请求
POST https://httpbin.org/post
Content-Type: application/json
{
"user": "admin",
"password": "123456"
}
> {% client.global.set("auth_token", response.body.json.token); %}
### 演示GET请求
GET https://httpbin.org/headers
Authorization: Bearer {{auth_token}}
После завершения первого запроса аутентификации в ответе можно получить возвращенную информацию о токене, а затем мы устанавливаем ее в глобальную переменную через скрипт, затем в следующем запросе интерфейса можно напрямую использовать заполнитель двойной фигурной скобки. чтобы получить этот токен
Эпилог
Почтальон имеет хорошую репутацию, и это действительно очень хороший обязательный инструмент.Когда я рекомендовал этот инструмент Бирен раньше, это всегда был почтальон Amway. Однако IDEA REST Client тоже очень хорош, и его стоит попробовать.Позже я переключился на IDEA REST Client для таких инструментов, как Amway.Я все равно потерял почтальона. При соединении с третьей стороной в проекте необходим файл запроса интерфейса rest-http.http, который не только удовлетворяет себя, но и облегчает других.
адрес блога:www.liangsonghua.com
Обратите внимание на общедоступную учетную запись WeChat: отчет о консервированных яйцах Songhua Preserved Egg на доске, становитесь более захватывающим!
Введение в общедоступную учетную запись: поделитесь техническими знаниями о работе на JD.com, а также технологиями JAVA и лучшими отраслевыми практиками, большинство из которых являются прагматичными, понятными и воспроизводимыми.