<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Bruno -  новый клиент для API  (Замена PostMan Insomnia)]]></title><description><![CDATA[<p dir="auto">Наша команда, как и многие другие, использовала Postman в качестве предпочтительного клиента REST API. Это помогло оптимизировать и упростить процесс взаимодействия, отладки и тестирования наших конечных точек и конечных точек третьих сторон, с которыми мы работали.</p>
<p dir="auto">К сожалению, когда Postman перешел на облачную модель, это сильно ограничило возможности работы без облачной учетной записи (которую нам не разрешили использовать из-за ограничений компании из-за рисков безопасности).</p>
<p dir="auto">Это положило начало поиску новой альтернативы. Мы и не подозревали, что в конечном итоге найдем что-то, что в конечном итоге будет лучше соответствовать нашим потребностям и рабочему процессу.</p>
<h2>Критерии поиска</h2>
<p dir="auto">Наш путь начался, когда переход Postman к облачной модели побудил нас искать альтернативу, которая более точно соответствовала бы нашим требованиям:</p>
<ul>
<li>
<p dir="auto">Поддержка нескольких коллекций: необходима для эффективной организации запросов API.</p>
</li>
<li>
<p dir="auto">Переменные окружения: Обязательная функция для плавного переключения между средой разработки и производством.</p>
</li>
<li>
<p dir="auto">Возможности написания сценариев: Очень желательно для использования ответов между конечными точками и добавления логики в наши процессы.</p>
</li>
<li>
<p dir="auto">Локальная поддержка: Неотъемлемый атрибут, гарантирующий отсутствие зависимости от облачного хранилища или внешних серверов.</p>
</li>
<li>
<p dir="auto">Рентабельный: Свободный доступ был критически важным фактором, учитывая логистические проблемы, связанные с получением разрешения на закупки для всей команды.</p>
</li>
<li>
<p dir="auto">Синхронизация команды: В идеале это должно быть решение, облегчающее обмен и обновление коллекций между членами команды. Это было очень приятно. Мы использовали бесплатный уровень Postman, поэтому мы передавали экспортированные файлы для обмена коллекциями между коллегами. Это приводило к рассинхронизации коллекций и доставляло много хлопот в обслуживании. Это была не единственная команда, с которой я столкнулся с этим, поэтому я действительно хотел найти решение, которое упростило бы эту задачу в будущем.</p>
</li>
</ul>
<h2>Претенденты</h2>
<p dir="auto">Наша оценка включала в себя несколько перспективных инструментов, каждый из которых имеет свои уникальные сильные и слабые стороны:</p>
<h3>Insomnia</h3>
<p dir="auto">Сильный конкурент Postman, который раньше был моим предпочтением, но после обновления он также требовал доступа к облачной учетной записи, аналогичной Postman, и сильно ограничивал использование приложения только локально. (С тех пор я не возвращался, чтобы опробовать его, но, похоже, они отменили это решение.)</p>
<h3>Thunder Client</h3>
<p dir="auto">Благодаря тому, что он был встроен в VS Code, вам не нужно было покидать интегрированную среду разработки, но он поддерживал только VS Code, который используют не все в нашей команде. Уровень “Бесплатный” позволяет выполнять только 50 запросов на коллекцию, что также означало бы, что нам пришлось бы разбивать наши коллекции.</p>
<h2>Почему Bruno?</h2>
<p dir="auto">Бруно оказался явным победителем в нашем поиске. И вот почему:</p>
<ul>
<li>
<p dir="auto">Обширный набор функций: Bruno предлагает множество функций, от нескольких коллекций и переменных среды до возможностей сценариев, без ущерба для пользовательского опыта.</p>
</li>
<li>
<p dir="auto">Мультиплатформенная поддержка: Существует несколько способов использования Bruno, включая классическое приложение, интерфейс командной строки и расширение VS Code; Мы делаем счастливыми всех членов нашей команды, независимо от их предпочтений.</p>
</li>
<li>
<p dir="auto">Универсальная поддержка импорта: Мы могли бы легко импортировать наши коллекции Postman и окружающую среду в Bruno. Он также поддерживает импорт коллекций Insomnia и спецификаций OpenAPI v3.</p>
</li>
</ul>
<p dir="auto">Но то, что действительно выделялось, это:</p>
<ul>
<li>
<p dir="auto">Совместная работа в команде: В отличие от нашего предыдущего подхода к Postman, Git-дружественный характер Бруно оптимизирует обмен коллекциями и обновлениями, способствуя лучшему сотрудничеству в команде. Платный уровень не нужен, и больше не нужно передавать файлы экспорта туда и обратно!</p>
</li>
<li>
<p dir="auto">Локальный, с открытым исходным кодом и бесплатный: приверженность Бруно локальной поддержке и открытому исходному коду идеально соответствует принципам нашей команды и логистическим ограничениям.</p>
</li>
</ul>
<p dir="auto"><img src="/assets/uploads/files/1717152402217-3ed56da0-9cc5-4f36-a5b0-2e0bd29ab384-image.png" alt="3ed56da0-9cc5-4f36-a5b0-2e0bd29ab384-image.png" class=" img-fluid img-markdown" /></p>
<h2>Вопросы</h2>
<h3>Как Бруно управляет коллекциями?</h3>
<p dir="auto">После того как вы укажете Бруно папку, он автоматически организует ваши коллекции в виде вложенных папок внутри нее, а запросы API — в виде обычных текстовых файлов. Вы можете настроить эту папку в качестве репозитория Git, чтобы вы и ваша команда могли управлять ею с помощью системы управления версиями. Любой другой член вашей команды, который хочет использовать вашу коллекцию, может просто клонировать репозиторий и открыть коллекцию в Bruno.</p>
<p dir="auto">В качестве примера можно ознакомиться с <a href="https://github.com/usebruno/github-rest-api-collection/tree/main" target="_blank" rel="noopener noreferrer">примером репозитория Bruno.</a></p>
<h3>Если он управляется в Git, как предотвратить фиксацию секретов?</h3>
<p dir="auto">При использовании переменных среды в Bruno вы можете столкнуться с конфиденциальными данными, такими как секреты, которые не должны предоставляться в репозитории. Чтобы защитить их, убедитесь, что вы пометили их как «Секретные» в Bruno. Это действие сигнализирует Бруно о том, что он должен обращаться с этими секретами конфиденциально, гарантируя, что они не будут записаны в текстовых файлах, тем самым обеспечивая безопасность вашей конфиденциальной информации.</p>
<p dir="auto"><img src="/assets/uploads/files/1717152511940-b84e4e41-8f42-4ab9-a2a4-39f31b502650-image.png" alt="b84e4e41-8f42-4ab9-a2a4-39f31b502650-image.png" class=" img-fluid img-markdown" /></p>
<h2>Заключение</h2>
<p dir="auto">Bruno выделяется как API-клиент, который предлагает хорошее сочетание функциональности, совместной работы и удобства для пользователя. Для любой команды, стремящейся улучшить свои процессы разработки и тестирования API, Bruno является привлекательным выбором, который стоит рассмотреть.</p>
]]></description><link>https://forum.exlends.ru/topic/4/bruno-novyj-klient-dlya-api-zamena-postman-insomnia</link><generator>RSS for Node</generator><lastBuildDate>Tue, 26 May 2026 01:31:02 GMT</lastBuildDate><atom:link href="https://forum.exlends.ru/topic/4.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 28 May 2024 10:48:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Bruno -  новый клиент для API  (Замена PostMan Insomnia) on Fri, 05 Jul 2024 08:37:32 GMT]]></title><description><![CDATA[<p dir="auto">@Jspi На данный момент плохо работает в  wsl2, вылетает ошибки при переименовании запросов,  игнорирования папок не работает, в итоге он в коллекциях показывает и git папку и node_modules.</p>
<p dir="auto">Поэтому советую  вот что: если вы пользуетесь wsl, то  лучше разворачивать проект не в wsl  а в  родительской ОС (windows)</p>
]]></description><link>https://forum.exlends.ru/post/36</link><guid isPermaLink="true">https://forum.exlends.ru/post/36</guid><dc:creator><![CDATA[Manul]]></dc:creator><pubDate>Fri, 05 Jul 2024 08:37:32 GMT</pubDate></item></channel></rss>