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

API *

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

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

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

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

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

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

Новости

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

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

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

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

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

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

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

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

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

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

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

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

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

Истории

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

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

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

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

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

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

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

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

Почитать
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 6

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


В этой статье я хотел бы рассказать о том, что такое 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 мин
Количество просмотров 4.6K

Демо


Демо здесь.


Зачем


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


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


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

Для чего


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


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

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

SQL в качестве API

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


SQL в API??? 

Верно, вы уже успели подумать: «это же безумие, предоставлять API, который принимает SQL». Да, это ужасная идея. Особенно, если API обращён к Интернету. Делать так небезопасно, вы напрашиваетесь на атаки в виде SQL-инъекций. Поддержка такого интерфейса превратится в кошмар, а сама реализация бэкенда будет замкнута на конкретную технологию (это будет какая-нибудь база данных ANSI SQL).

Но справедливо ли такое суждение? Время его пересмотреть!
Читать дальше →
Всего голосов 45: ↑42 и ↓3 +39
Комментарии 40

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

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн

Смена профессии и мой первый опыт в IT: путешествие в мир фронтенда с Tauri, REST и Fetch API

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

Привет, Хабр! Меня зовут Гармаев Энхэ. В течение длительного времени я работал в сфере розничной торговли, занимая должность менеджера. Это было увлекательное и насыщенное время, но, как говорится, в жизни всегда есть место переменам и новым вызовам. Сегодня я хочу поделиться с вами своим путешествием, решением о смене профессии и первом опыте работы в IT компании.

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

Написание слоя API в приложении — это прошлый век! Встречайте универсальный прокси

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

Перестаньте писать, генерировать и переписывать API слой для каждого приложения - создайте универсальный прокси с TypeScript единый для множества приложений и обновляйте только типы при изменениях API на сервере!

Ваш API слой всегда будет оставаться минимальным в размерах и не увеличится ни на байт с увеличением количества вызываемых методов! Это обеспечит стройность вашим бандлам и добавит удовольствие пользователю от быстрой загрузки вашего сайта

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

GET запросы на практике: правила, принципы и примеры

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

Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.

Но в большинстве из них всё ограничивается описанием URL ресурса, мотивацией использовать пагинацию, сложными словами про кэширование и SSL. Это, безусловно, необходимо для общего понимания технологий, но практически не помогает, когда ты сидишь перед пустой страницей и надо начать “проектировать контракт”.

Я работаю тимлидом направления системного анализа в X5Tech и за все время развития карьеры сталкивалась с большим количеством кейсов проектирования Web систем. IT продукты в большинстве очень динамичны: постоянно изменяются требования, появляются новые, итеративно улучшается пользовательский опыт (по принципу 20% усилий на 80% результата, а остальное доделаем потом).

Часто при проектировании мне помогала следующая идея: было бы здорово проектировать контракт так, чтобы при малейшем изменении/добавлении бизнес-правил его не приходилось сильно трансформировать, так как API является стыковочным звеном между разными слоями приложения. По ходу повествования я приведу пару примеров, чтобы проиллюстрировать такие изменения.

В этой статье предлагаю спроектировать контракт по шагам, и на каждом из них я расскажу про общие рекомендации из копилочки “Полезное”, а также про личные правила и практики, полученные долгим опытом работы над постоянно меняющимися ИТ-продуктами, которые помогут для “дальновидного” проектирования GET REST API.

Читать далее
Всего голосов 25: ↑23 и ↓2 +21
Комментарии 11

Как правильно написать скрипт для виртуального ассистента

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

Здравствуйте! Меня зовут Михаил Абрамов, я работаю техническим писателем в МТС Exolve. Мы разрабатываем и тестируем цифровых ботов на платформе VoiceBox — это конструктор голосовых роботов.

Мы запустили этот проект в 2020 году. Он создавался для бизнеса, наших клиентов, которые хотели автоматизировать рутину, например, подтверждение брони, доставки, адреса и так далее.

Сразу предупрежу возможный негатив: наш сервис можно использовать только для звонков людям, которые готовы к этому звонку. Вы заказали пиццу и робот позвонил, сообщил номер заказа, проговорил все его позиции и время доставки. Словом, полезный робот.

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

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

Gemini ➜ OpenAI API прокси. Serverless

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

API Gemini бесплатен, но существует множество инструментов, которые работают исключительно с API OpenAI.

Проект openai-gemini даёт позволяет с лёгкостью создать персональный Gemini API-endpoint, совместимый с OpenAI, бесплатно.

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

Что такое архитектура приложений MACH и есть ли там технологический прорыв — кроме пиара и маркетинга

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

Вы наверняка слышали термин «MACH-архитектура», которая включает в себя Микросервисы, API-First дизайн, Cloud-Native инфраструктуру и Headless фронтенд. На Хабре тема MACH архитектуры практически не поднимается ввиду как сложности полной реализации и того факта, что MACH обычно ассоциируют только с E-Commerce уровня enterprise. Настораживает, что вокруг МАСН много пиара, но очень мало кейсов внедрений. Собственно, данный обзор — об этом.

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

Аутентификация для WebSocket и SSE: до сих пор нет стандарта?

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

WebSocket и SSE появились более десяти лет назад, однако до сих пор в стандартах отсутствуют рекомендации по решению задачи аутентификации для подобных соединений.

В статье разберем особенности аутентификации применительно к протоколу WebSocket и технологии Server-Sent Events, обсудим, какие нюансы могут быть, когда клиентская часть находится в браузере, и на что еще стоит обратить внимание, чтобы избежать неочевидных проблем.

А еще заодно поговорим про уязвимость Cross-Site WebSocket Hijacking (CSWSH) и в целом посмотрим на многие вопросы через призму информационной безопасности.

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

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