Этот материал уже без шуточек. Технический обзор и оценка принятых решений. На самом деле шуточки есть, но я не смог окончательно от них избавиться. Видимо, без них нет меня.
API *
Интерфейс программирования приложений
Новости
Создаём DolbyDigital Surround аудио-плеер
Статья для .NET разработчиков о том как привязать сторонний стриминговый сервис к своему приложению и запустить прослушивание музыки и подкастов в формате DolbyDigital Surround 5,1.
Простой CRUD на chi. Часть 1
Согласно официальному сайту, chi — это легковесный, идиоматический и композируемый маршрутизатор для создания HTTP-сервисов на Go. Он на 100% совместим с net/http
и довольно легок в обращении, однако его документация предназначена скорее для опытных разработчиков, чем для новичков, поэтому я решил написать серию статей, в ходе которых мы будем постепенно развивать и перерабатывать простейший CRUD, написанный на chi.
В рамках данной части мы напишем код, который ляжет в основу дальнейших статей. Это будет простой и в чем-то даже грязный код, но это сделано умышленно, чтобы автор вместе с читателем мог прогрессировать от части к части. Код для каждой последующей части будет появляться по мере написания в этом репозитории и помещаться в отдельную ветку, а весь код, написанный для этой части, находится в этой ветке.
Телеграм бот + LLM (GigaChat)
В данном посте я расскажу о своем опыте общения с gigachat. Меня просто утомило это американское OpenAI: vpn, проблема с пополнением и т.д. В общем, после определенного количества экспериментов с chatGPT я решил попробовать GigaChat. Во-первых это патриотично, во-вторых Сбер собрал действительно крутую команду нейронщиков, которые идут в правильном направлении, в-третьих нейро-сотрудники это сейчас топ для бизнеса основанного на консалтинге, в-четвертых Сбер дает много бесплатных токенов каждый месяц, в-пятых скорость ответа пугает даже спамеров ВКонтакте ;)) Честно говоря, Сбер самым первым из банков «поехал» на big data, что сразу дало понять о работе в сфере Ai.
Истории
Формализуем процесс создания нового API в микросервисах на .NET
Мы работаем с ИТ-продуктами в сфере логистики и e-commerce. Большинство таких проектов крупные с точки зрения архитектуры – включают в себя множество сервисов, необходимых для исправной работы целостных систем.
Поговорим о том, как организовать взаимодействие микросервисов в большом продукте-долгожителе синхронно и асинхронно.
Разбираем использование open-source Wunjo AI в ваших проектах с искусственным интеллектом и просто нейронные сети
Привет, дорогой Хабр! Давно не общались. Сегодня мы рассмотрим проект с открытым исходным кодом, позволяющий создавать дипфейки, клонировать речь, генерировать видео, удалять текст и объекты, а также получать изображения без фона, прямо на вашем компьютере. Поговорим о Wunjo AI и его возможностях для тех, кто еще не в курсе. В начале статьи ссылки на открытый код GitHub и установочные файлы, чтобы воспользоваться готовыми сборками. А в конце статьи я добавлю видео, в котором расскажу, какие нейронные сети применяются для работы с видео или со звуком, и как эти нейронные сети устроены и работают, либо можно спросить бота в блоге и получить ответ текстом.
Работа с REST API при помощи swagger-typescript-api
Прежде чем начать писать данную статью, я озадачился интересным вопросом. А кто как вообще работает с API в 2024 году? Для меня наличие Swagger-контракта или OpenAPI-контракта уже несколько лет как must have. И откровенно говоря, мне сложно представить, что люди не используют этот фреймворк для работы c REST API. Однако, если среди читателей таковые есть, и вам до сих пор скидывают «дтоошки», то вперед осваивать и продвигать OpenApi.
Для понимания работы swagger-typescript-api я сначала кратко опишу основные моменты спецификации OpenAPI. Читатели, которые уже знакомы с этим, могут сразу перейти к части про swagger-typescript-api.
Одно из самых востребованных IT-решений: простыми словами об API
Любой современной IT-компании так или иначе приходится работать с данными: они используются как в оптимизации показателей самой компании, так и в предоставлении услуг потребителям. Задача часто осложняется необходимостью управления и передачи больших объемов данных, поэтому организовать работу с ними помогают API.
Статья написана простым языком, где многие вещи объясняются через доступные примеры, чтобы материал был понятен для всех и давал общее представление, а не только рассказывал о тонкостях разработки.
Поговорим про API и разберем следующее:
• Что такое API и где используется?
• Почему проектам необходим именно API?
• Как устроен API?
• При помощи чего разрабатывают API?
• Как провести сравнительный анализ технологий для разработки API?
• Путь разработки и возникающие сложности
• Стоит ли рассматривать API для своего проекта?
Пишем REST-приложение на Delphi
Привет, Хабр!
Я Ануар, работаю в GlowByte и профессионально играю на нервах (шутка 😂).
К написанию статьи подвигла ситуация отсутствия в Рунете информации, как с использованием Delphi реализовать классическое трехзвенное приложение без использования фреймворков и каких-то приближенных к Microsoft технологий. Ниже следует текст немного в шутливой форме о мини-квесте «Как быстро написать распределенное многозвенное приложение на Delphi, использующее REST API».
Целью было написать статью, которая бы коротко и ясно показывала, как реализовать такой функционал, так как не нашел статей и примеров именно по этой тематике и проблематике. Может, кому-то пригодится при освоении и понимании азов REST API. Возможно, кому-то статья покажется «для самых маленьких», но я надеюсь, что она будет полезна как в практическом смысле, так и теоретическом и поможет понять, как все это работает.
API для своей программы (Delphi)
Здравствуйте
В этой статье я хотел бы рассказать о том, что такое API и для чего он нужен. Как известно всё познаётся на практике. По этому я создам простейший API для своей программы, который должен послужить хорошим примером для новичков.
Что такое API?
Я позволю себе малюсенькую вырезку из вики: «Интерфейс программирования приложений (иногда интерфейс прикладного программирования) (англ. application programming interface, API [эй-пи-ай])[1] — набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений.»
Класс коннектор для Диадок API на Python
Решил поделиться своим опытом как я собирался сделать сервис управлением ЭДО провайдерами по правилам SOLID.
Для начала я решил составить архитектуру сервиса, решил что класс управления api должен включать в себя http клиент как зависимость, так как не все могут захотеть использовать requests для выполнения запросов, еще это даст возможность переехать на асинхронную версию. Изучив документацию системы Диадок, я узнал что запросы можно выполнять как в JSON формате так и используя RPC модели. Поэтому я назвал класс DiadocJSONClient и он использует библиотеку requests для http запросов.
GitHub Copilot ➜ OpenAI API прокси. Serverless
Демо
Демо здесь.
Зачем
GitHub Copilot доступен бесплатно для подтверждённых учащихся, преподавателей и мейнтейнеров популярных проектов с открытым исходным кодом.
- Учащиеся и преподаватели: см. Преимущества для всех в школе [en].
- Мейнтейнеры: проверьте https://github.com/github-copilot/free_signup
Если Copilot недоступен, значит ваш проект не соответствует критериям, т.е. ему нужно больше звёзд.
Даже если вы не подходите под указанные выше критерии, стоимость платной подписки
(Individual) более доступна, чем аналогичное предложение от OpenAI.
Она стоит всего 10 долларов и при этом обеспечивает доступ к GPT-4.
Если вышеперечисленные варианты вам не подходят — попробуйте полностью бесплатную альтернативу: openai-gemini.
Для чего
GitHub Copilot чат доступен исключительно в избранных IDE.
Проект openai-github-copilot
позволяет использовать его с намного более широким спектром инструментов: предоставляется общий API, совместимый с OpenAI, который можно развернуть бесплатно.
(Однако подписка на GitHub Copilot всё так же требуется.)
SQL в качестве API
SQL в API???
Верно, вы уже успели подумать: «это же безумие, предоставлять API, который принимает SQL». Да, это ужасная идея. Особенно, если API обращён к Интернету. Делать так небезопасно, вы напрашиваетесь на атаки в виде SQL-инъекций. Поддержка такого интерфейса превратится в кошмар, а сама реализация бэкенда будет замкнута на конкретную технологию (это будет какая-нибудь база данных ANSI SQL).
Но справедливо ли такое суждение? Время его пересмотреть!
Ближайшие события
Смена профессии и мой первый опыт в IT: путешествие в мир фронтенда с Tauri, REST и Fetch API
Привет, Хабр! Меня зовут Гармаев Энхэ. В течение длительного времени я работал в сфере розничной торговли, занимая должность менеджера. Это было увлекательное и насыщенное время, но, как говорится, в жизни всегда есть место переменам и новым вызовам. Сегодня я хочу поделиться с вами своим путешествием, решением о смене профессии и первом опыте работы в IT компании.
Написание слоя API в приложении — это прошлый век! Встречайте универсальный прокси
Перестаньте писать, генерировать и переписывать API слой для каждого приложения - создайте универсальный прокси с TypeScript единый для множества приложений и обновляйте только типы при изменениях API на сервере!
Ваш API слой всегда будет оставаться минимальным в размерах и не увеличится ни на байт с увеличением количества вызываемых методов! Это обеспечит стройность вашим бандлам и добавит удовольствие пользователю от быстрой загрузки вашего сайта
GET запросы на практике: правила, принципы и примеры
Я думаю, что вы не раз уже гуглили, заглядывали в статьи, манифесты IT-гигантов о лучших практиках проектирования API. Я тоже.
Но в большинстве из них всё ограничивается описанием URL ресурса, мотивацией использовать пагинацию, сложными словами про кэширование и SSL. Это, безусловно, необходимо для общего понимания технологий, но практически не помогает, когда ты сидишь перед пустой страницей и надо начать “проектировать контракт”.
Я работаю тимлидом направления системного анализа в X5Tech и за все время развития карьеры сталкивалась с большим количеством кейсов проектирования Web систем. IT продукты в большинстве очень динамичны: постоянно изменяются требования, появляются новые, итеративно улучшается пользовательский опыт (по принципу 20% усилий на 80% результата, а остальное доделаем потом).
Часто при проектировании мне помогала следующая идея: было бы здорово проектировать контракт так, чтобы при малейшем изменении/добавлении бизнес-правил его не приходилось сильно трансформировать, так как API является стыковочным звеном между разными слоями приложения. По ходу повествования я приведу пару примеров, чтобы проиллюстрировать такие изменения.
В этой статье предлагаю спроектировать контракт по шагам, и на каждом из них я расскажу про общие рекомендации из копилочки “Полезное”, а также про личные правила и практики, полученные долгим опытом работы над постоянно меняющимися ИТ-продуктами, которые помогут для “дальновидного” проектирования GET REST API.
Как правильно написать скрипт для виртуального ассистента
Здравствуйте! Меня зовут Михаил Абрамов, я работаю техническим писателем в МТС Exolve. Мы разрабатываем и тестируем цифровых ботов на платформе VoiceBox — это конструктор голосовых роботов.
Мы запустили этот проект в 2020 году. Он создавался для бизнеса, наших клиентов, которые хотели автоматизировать рутину, например, подтверждение брони, доставки, адреса и так далее.
Сразу предупрежу возможный негатив: наш сервис можно использовать только для звонков людям, которые готовы к этому звонку. Вы заказали пиццу и робот позвонил, сообщил номер заказа, проговорил все его позиции и время доставки. Словом, полезный робот.
Сегодня расскажу, как можно легко и просто разрабатывать скрипты звонков в графическом интерфейсе нашего конструктора.
Gemini ➜ OpenAI API прокси. Serverless
API Gemini бесплатен, но существует множество инструментов, которые работают исключительно с API OpenAI.
Проект openai-gemini даёт позволяет с лёгкостью создать персональный Gemini API-endpoint, совместимый с OpenAI, бесплатно.
Что такое архитектура приложений MACH и есть ли там технологический прорыв — кроме пиара и маркетинга
Вы наверняка слышали термин «MACH-архитектура», которая включает в себя Микросервисы, API-First дизайн, Cloud-Native инфраструктуру и Headless фронтенд. На Хабре тема MACH архитектуры практически не поднимается ввиду как сложности полной реализации и того факта, что MACH обычно ассоциируют только с E-Commerce уровня enterprise. Настораживает, что вокруг МАСН много пиара, но очень мало кейсов внедрений. Собственно, данный обзор — об этом.
Аутентификация для WebSocket и SSE: до сих пор нет стандарта?
WebSocket и SSE появились более десяти лет назад, однако до сих пор в стандартах отсутствуют рекомендации по решению задачи аутентификации для подобных соединений.
В статье разберем особенности аутентификации применительно к протоколу WebSocket и технологии Server-Sent Events, обсудим, какие нюансы могут быть, когда клиентская часть находится в браузере, и на что еще стоит обратить внимание, чтобы избежать неочевидных проблем.
А еще заодно поговорим про уязвимость Cross-Site WebSocket Hijacking (CSWSH) и в целом посмотрим на многие вопросы через призму информационной безопасности.
Вклад авторов
-
forgotten 544.0 -
alizar 505.0 -
Mehdzor 393.0 -
dididididi 339.0 -
m1rko 323.2 -
ru_vds 272.4 -
Vasilui 265.2 -
empenoso 219.0 -
jirfag 213.0 -
GlobalSign_admin 207.2