Postman как отдельную программу уже не открываю. А расширение в VS Code тоже не выручает: это тоже самое веб-приложение во вкладке. Оно долго стартует, заметно ест память и живёт отдельно от файлов проекта. Коллекция остаётся в аккаунте, а не рядом с кодом, который её вызывает. Считаю что самый удобный http клиент у Jetbrains. Поэтому решил повторить его формат.
Сделал свою IDE и в нее встроил HTTP-клиент, который повторяет JetBrains HTTP Client. Файл .http или .rest — это запросы: слева текст, справа ответ и история. Формат привычный: блоки ###, переменные {{baseUrl}}, окружения http-client.env.json. После ответа можно сохранить значение для следующих запросов:
Запросы и коллекции можно группировать в .http файлах или в папках средствами IDE
Дальше в том же файле работает {{token}}. Логин и вызовы API лежат в репозитории, их видно в diff и на ревью. Ответ можно скопировать как curl.
Готовую коллекцию переписывать не нужно. У открытого .http в меню «Действия» есть «Импорт из swagger» и «Импорт из Postman». OpenAPI 3, Swagger 2 или коллекцию Postman v2.1 вставляют JSON либо указывают URL. Импорт раскладывает пути, заголовки и тело в тот же формат: {id} и :id становятся {{id}}.
Почему это удобнее Postman:
запрос — файл проекта, а не запись в чужом облаке;
нет отдельного тяжёлого окна и веб-вью, которое тормозит;
окружения и скрипты лежат рядом с кодом;
не нужно переключаться в другую программу, чтобы проверить API.
В итоге HTTP-клиент встроенный в IDE можно использовать и в браузере, и как отдельное приложение. Он работает в обеих версиях (в Web-версии будут ограничения на CORS, но можно использовать прокси). В десктопе запросы идут напрямую, свой прокси задаётся в тулбаре или в окружении. А если нужно еще и что либо подправить, то есть редактор кода, который покрывает популярные языки: TypeScript и JavaScript, Python, Go, Rust, PHP, Java, C и C++, C#, Kotlin и другие.
В итоге для меня Postman закрыт. Теперь пользуюсь легковесной IDE как http-клиентом.