Нередко разработчики бэкенда используют Postman при написании кода. В этой статье мы изучим одну полезную функцию Postman, которая может сократить время, затрачиваемое на разработку.
БЕСПЛАТНО СКАЧАТЬ КНИГИ в телеграм канале "Библиотека тестировщика"
Большинство API сегодня используют формат JSON для тела запроса. А JSON не допускает комментариев, записанных в формате //...
или /*...*/
. В процессе разработки может потребоваться закомментировать некоторые части запроса или добавить какое-то описание к полям или всему запросу.
Когда мы добавляем комментарии В Postman и пытаемся вызвать API, это приводит к ошибке. Отсюда возникает вопрос: есть ли какие-то обходные пути для решения этой проблемы?
UPD. В апреле 2023 года Postman представил поддержку комментариев. Таким образом, если вы пользуетесь новейшей версией Postman, то дополнительные действия, описанные в этой статье, больше не нужны. Узнайте больше на blog.postman.com.
Многие из вас уже знают, что в Postman есть секция под названием Pre-request Script. Она предназначена для запуска некоторого JavaScript-кода перед выполнением запроса к API. Мы можем просто добавить в этот раздел код, который будет получать тело запроса и удалять из него все комментарии перед отправкой запроса к API. Код приведен ниже:
console.log('Running pre-request script...'); const stripComments = jsonBody => jsonBody.replace(/\\"|"(?:\\"|[^"])*"|(\/\/.*|\/\*[\s\S]*?\*\/)/g, (m, g) => g ? "" : m); json = stripComments(pm.request.body.toString()); console.log(json); pm.request.body=json; console.log('Pre-request script is executed!');
Этот простой код извлекает тело из запроса, удаляет все комментарии, а затем устанавливает это новое тело в запрос:
Мы можем протестировать его с помощью тестового API Postman:
Запись лога можно найти в консоли Postman:
Полную коллекцию Postman вы можете найти на GitHub.
Заключение
Итак, чтобы добавить комментарий в теле запроса в JSON, можно использовать функцию Pre-request Script. В ней мы прописываем некоторый JavaScript-код, который запускается перед выполнением запроса к API. Мы добавили в этот раздел код, получающий тело запроса и удаляющий из него все комментарии перед отправкой запроса к API.
Перевод статьи «JSON request body comments in Postman».
Пингбэк: Большой учебник по Postman