Как стать автором
Обновить
81.03

API *

Интерфейс программирования приложений

Сначала показывать
Порог рейтинга
Уровень сложности

Книга «Тестирование веб-API»

Время на прочтение 22 мин
Количество просмотров 2.2K
imageПривет, Хаброжители!

Веб-интерфейсы — лицо приложения, и они должны быть совершенными. Внедрение программы автоматизированного тестирования — лучший способ убедиться, что ваши API готовы к работе.

«Тестирование веб-API» — это уникальное практическое руководство, включающее в себя описание всех этапов: от начального проектирования набора тестов до методов документирования, реализации и предоставления высококачественных API. Вы познакомитесь с обширным набором методов тестирования — от исследовательского до тестирования продакшен-кода, а также узнаете, как сэкономить время за счет автоматизации с использованием стандартных инструментов. Книга поможет избежать многих трудностей при тестировании API.
Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 0

Новости

Как получить Midjourney’s API

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 4K

В этой статье показано, как полный функционал Midjourney с помощью АПИ

Для этой задачи вам понадобится учетная запись Discord с активной подпиской Midjourney, подойдет базовый план за 10 долларов.

Читать далее
Всего голосов 7: ↑3 и ↓4 -1
Комментарии 3

Кто убил сетевой коммутатор?

Уровень сложности Средний
Время на прочтение 17 мин
Количество просмотров 8.9K

Недавно мы выявили интересный сбой в системе Hubris. Изначально этот код работал корректно, но со временем, в связи с изменениями в окружении и сопутствующих условиях, он превратился в ошибку.

Этот инцидент и процесс выявления и исправления ошибки предоставили нам новый взгляд на процесс разработки в контексте Hubris. Такие ошибки в ядре Hubris случаются нечасто, благодаря его компактности. Однако, этот особенный случай заставил меня зафиксировать его: речь идет о том, как две отдельные полезные функции, взаимодействуя вместе, привели к сбою в системе.

Читать далее
Всего голосов 8: ↑8 и ↓0 +8
Комментарии 1

apiman.io — api-шлюз для интеграционного обмена с открытым кодом

Время на прочтение 3 мин
Количество просмотров 1.3K

Сначала о расскажу о проблеме. Нашей компании понадобился внешний шлюз для перенаправления API-запросов от партнеров к различным приложениям внутри компании.

Запросы нужно передавать для разных задач. Одна из них - интеграция внешних складских систем (WMS).

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Истории

Эффективные трассировки в Go

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 1.8K

Пакет runtime/trace содержит мощный инструмент для понимания программ Go и устранения неполадок. Функциональность внутри позволяет создавать трассировку исполнения каждой горутины за определенный период времени. С помощью go tool trace command (или превосходного инструмента gotraceui с открытым исходным кодом) можно визуализировать и исследовать данные в этих трассировках.

Магия трассировки заключается в том, что она может легко выявить такие вещи в программе, которые трудно увидеть другими способами. Например, узкое место параллелизма, когда множество горутин блокируют один и тот же канал, может быть довольно трудно увидеть в профиле процессора, потому что нет исполнения для сэмпла. Но в трассировке отсутствие исполнения будет видно с удивительной четкостью, а трассировка стека заблокированных горутин быстро укажет на виновника.

Читать далее
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 0

Использование кастомных шаблонов и конфигов для swagger-typescript-api

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 1.3K

swagger-typescript-api - это мощный инструмент для генерации кода на основе OpenApi-контактов, о процессе работы с которым я рассказывал в предыдущей статье. Там же я упомянул, что его можно кастомизировать под нужды конкретного проекта с помощью своих шаблонов.

Именно кастомные шаблоны и бонусом, кастомная конфигурация, будут раскрыты в текущей статье. Поехали!

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 1

API для хостинга: кому он потребовался и как мы его сделали

Время на прочтение 6 мин
Количество просмотров 1.5K

Привет, Хабр! На связи хостинг-провайдер SpaceWeb. В этой статье расскажем, как работает клиентский API у нас, почему для него мы выбрали технологию JSON-RPC и чем она нам так нравится. Историей делятся Виталий Киреев, руководитель R&D, и Алексей Шашкин, продакт-менеджер.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 4

Как провести фаззинг REST API с помощью RESTler. Часть 2

Время на прочтение 7 мин
Количество просмотров 864

Всем привет! На связи Владимир Исабеков, руководитель группы статического тестирования безопасности приложений в Swordfish Security. В предыдущей статье мы рассказывали о Stateful REST API-фаззинге с применением инструмента RESTler. Сегодня мы поговорим о продвинутых возможностях RESTler-а и покажем, как настроить фаззер на примере более сложного приложения. Этот материал мы подготовили вместе с Артемом Мурадяном @TOKYOBOY0701, инженером по безопасности.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Комментарии 0

Cardoteka — техническая начинка и аналитика решений типобезопасной SP [кто любит вдаваться]

Уровень сложности Сложный
Время на прочтение 28 мин
Количество просмотров 352

Этот материал уже без шуточек. Технический обзор и оценка принятых решений. На самом деле шуточки есть, но я не смог окончательно от них избавиться. Видимо, без них нет меня.

Узнать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 0

Создаём DolbyDigital Surround аудио-плеер

Уровень сложности Средний
Время на прочтение 5 мин
Количество просмотров 1.4K

Статья для .NET разработчиков о том как привязать сторонний стриминговый сервис к своему приложению и запустить прослушивание музыки и подкастов в формате DolbyDigital Surround 5,1.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Комментарии 4

Простой CRUD на chi. Часть 1

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 1.8K

Согласно официальному сайту, chi — это легковесный, идиоматический и композируемый маршрутизатор для создания HTTP-сервисов на Go. Он на 100% совместим с net/http и довольно легок в обращении, однако его документация предназначена скорее для опытных разработчиков, чем для новичков, поэтому я решил написать серию статей, в ходе которых мы будем постепенно развивать и перерабатывать простейший CRUD, написанный на chi.

В рамках данной части мы напишем код, который ляжет в основу дальнейших статей. Это будет простой и в чем-то даже грязный код, но это сделано умышленно, чтобы автор вместе с читателем мог прогрессировать от части к части. Код для каждой последующей части будет появляться по мере написания в этом репозитории и помещаться в отдельную ветку, а весь код, написанный для этой части, находится в этой ветке.

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Комментарии 8

Телеграм бот + LLM (GigaChat)

Уровень сложности Средний
Время на прочтение 4 мин
Количество просмотров 7.3K

В данном посте я расскажу о своем опыте общения с gigachat. Меня просто утомило это американское OpenAI: vpn, проблема с пополнением и т.д. В общем, после определенного количества экспериментов с chatGPT я решил попробовать GigaChat. Во-первых это патриотично, во-вторых Сбер собрал действительно крутую команду нейронщиков, которые идут в правильном направлении, в-третьих нейро-сотрудники это сейчас топ для бизнеса основанного на консалтинге, в-четвертых Сбер дает много бесплатных токенов каждый месяц, в-пятых скорость ответа пугает даже спамеров ВКонтакте ;)) Честно говоря, Сбер самым первым из банков «поехал» на big data, что сразу дало понять о работе в сфере Ai.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Комментарии 16

Формализуем процесс создания нового API в микросервисах на .NET

Уровень сложности Сложный
Время на прочтение 5 мин
Количество просмотров 3.3K

Мы работаем с ИТ-продуктами в сфере логистики и e-commerce. Большинство таких проектов крупные с точки зрения архитектуры – включают в себя множество сервисов, необходимых для исправной работы целостных систем. 

Поговорим о том, как организовать взаимодействие микросервисов в большом продукте-долгожителе синхронно и асинхронно. 

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 12

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн

Разбираем использование open-source Wunjo AI в ваших проектах с искусственным интеллектом и просто нейронные сети

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 1.8K

Привет, дорогой Хабр! Давно не общались. Сегодня мы рассмотрим проект с открытым исходным кодом, позволяющий создавать дипфейки, клонировать речь, генерировать видео, удалять текст и объекты, а также получать изображения без фона, прямо на вашем компьютере. Поговорим о Wunjo AI и его возможностях для тех, кто еще не в курсе. В начале статьи ссылки на открытый код GitHub и установочные файлы, чтобы воспользоваться готовыми сборками. А в конце статьи я добавлю видео, в котором расскажу, какие нейронные сети применяются для работы с видео или со звуком, и как эти нейронные сети устроены и работают, либо можно спросить бота в блоге и получить ответ текстом.

Почитать
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 6

Работа с REST API при помощи swagger-typescript-api

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 4K

Прежде чем начать писать данную статью, я озадачился интересным вопросом. А кто как вообще работает с API в 2024 году? Для меня наличие Swagger-контракта или OpenAPI-контракта уже несколько лет как must have. И откровенно говоря, мне сложно представить, что люди не используют этот фреймворк для работы c REST API. Однако, если среди читателей таковые есть, и вам до сих пор скидывают «дтоошки», то вперед осваивать и продвигать OpenApi.

Для понимания работы swagger-typescript-api я сначала кратко опишу основные моменты спецификации OpenAPI. Читатели, которые уже знакомы с этим, могут сразу перейти к части про swagger-typescript-api.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 8

Одно из самых востребованных IT-решений: простыми словами об API

Уровень сложности Простой
Время на прочтение 12 мин
Количество просмотров 9.4K

Любой современной IT-компании так или иначе приходится работать с данными: они используются как в оптимизации показателей самой компании, так и в предоставлении услуг потребителям. Задача часто осложняется необходимостью управления и передачи больших объемов данных, поэтому организовать работу с ними помогают API.

Статья написана простым языком, где многие вещи объясняются через доступные примеры, чтобы материал был понятен для всех и давал общее представление, а не только рассказывал о тонкостях разработки.

Поговорим про API и разберем следующее:

Что такое API и где используется?
Почему проектам необходим именно API?
Как устроен API?
При помощи чего разрабатывают API?
Как провести сравнительный анализ технологий для разработки API?
Путь разработки и возникающие сложности
Стоит ли рассматривать API для своего проекта?

Читать далее
Всего голосов 10: ↑6 и ↓4 +2
Комментарии 13

Пишем REST-приложение на Delphi

Уровень сложности Простой
Время на прочтение 7 мин
Количество просмотров 3.8K

Привет, Хабр!

Я Ануар, работаю в GlowByte и профессионально играю на нервах (шутка 😂).

К написанию статьи подвигла ситуация отсутствия в Рунете информации, как с использованием Delphi реализовать классическое трехзвенное приложение без использования фреймворков и каких-то приближенных к Microsoft технологий. Ниже следует текст немного в шутливой форме о мини-квесте «Как быстро написать распределенное многозвенное приложение на Delphi, использующее REST API». 

Целью было написать статью, которая бы коротко и ясно показывала, как реализовать такой функционал, так как не нашел статей и примеров именно по этой тематике и проблематике. Может, кому-то пригодится при освоении и понимании азов REST API. Возможно, кому-то статья покажется «для самых маленьких», но я надеюсь, что она будет полезна как в практическом смысле, так и теоретическом и поможет понять, как все это работает.

Поехали!
Всего голосов 14: ↑13 и ↓1 +12
Комментарии 52

API для своей программы (Delphi)

Время на прочтение 2 мин
Количество просмотров 1.6K

Здравствуйте


В этой статье я хотел бы рассказать о том, что такое API и для чего он нужен. Как известно всё познаётся на практике. По этому я создам простейший API для своей программы, который должен послужить хорошим примером для новичков.

Что такое API?


Я позволю себе малюсенькую вырезку из вики: «Интерфейс программирования приложений (иногда интерфейс прикладного программирования) (англ. application programming interface, API [эй-пи-ай])[1] — набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.»
Читать дальше →
Всего голосов 13: ↑8 и ↓5 +3
Комментарии 12

Класс коннектор для Диадок API на Python

Время на прочтение 5 мин
Количество просмотров 1.5K

Решил поделиться своим опытом как я собирался сделать сервис управлением ЭДО провайдерами по правилам SOLID.

Для начала я решил составить архитектуру сервиса, решил что класс управления api должен включать в себя http клиент как зависимость, так как не все могут захотеть использовать requests для выполнения запросов, еще это даст возможность переехать на асинхронную версию. Изучив документацию системы Диадок, я узнал что запросы можно выполнять как в JSON формате так и используя RPC модели. Поэтому я назвал класс DiadocJSONClient и он использует библиотеку requests для http запросов.

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Комментарии 4

GitHub Copilot ➜ OpenAI API прокси. Serverless

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 5K

Демо


Демо здесь.


Зачем


GitHub Copilot доступен бесплатно для подтверждённых учащихся, преподавателей и мейнтейнеров популярных проектов с открытым исходным кодом.


Даже если вы не подходите под указанные выше критерии, стоимость платной подписки
(Individual) более доступна, чем аналогичное предложение от OpenAI.
Она стоит всего 10 долларов и при этом обеспечивает доступ к GPT-4.


Если вышеперечисленные варианты вам не подходят — попробуйте полностью бесплатную альтернативу: openai-gemini.

Для чего


GitHub Copilot чат доступен исключительно в избранных IDE.


Проект openai-github-copilot позволяет использовать его с намного более широким спектром инструментов: предоставляется общий API, совместимый с OpenAI, который можно развернуть бесплатно.
(Однако подписка на GitHub Copilot всё так же требуется.)

Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 6

Вклад авторов