Обновить
44.92

Проектирование API *

О создании API

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

Тестирование микросервисов: просто и эффективно даже для начинающих

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

Тестирование микросервисов: просто и эффективно даже для начинающих

Привет, друзья! В современном мире разработки программного обеспечения микросервисы стали настоящим хитом, словно умные кубики Лего, которые собираются вместе в интеллектуальное приложение. Но стоит ли бояться тестирования этих микросервисов? Давайте вместе разберемся, как освоить их проверку.

Читать далее

Примеры Telegram ботов для личных автоматизаций

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

Telegram-ботами уже никого не удивить. Недавно Telegram отметил 10-летие, и я решил сделать текстовую версию своего ролика. Идея простая — иногда возникают сложности с тем, чтобы придумать о чем писать Telegram бота, и я решил поделиться подборкой ботов, которых разработал и использую в своей жизни я.

Причем это будут не прям боты, а скорее способы использования telegram-bot-api для решения разных задач.

Читать далее

Своя реализация быстрых ответов в чатах Битрикс 24

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

Добавляем функционал быстрых ответов на любом тарифе Битрикс24

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

А что нужно то?

Все что вам нужно знать о таймаутах

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

Как установить оптимальное значение таймаутов в микросервисной архитектуре, чтобы достичь максимальной производительности и отказоустойчивости.

Под катом вы узнаете как установить оптимальные значение connection и request timeout, стоит ли повторять запрос при ошибке или лучше избегать этого.

В конце статьи есть небольшая шпаргалка и куча полезных ссылок. Приятного чтения.

Читать далее

5 принципов защиты данных при работе с API

Время на прочтение6 мин
Охват и читатели5.7K

В последние годы стало нормой использовать API при разработке веб- и мобильных приложений. В этой статье Екатерина Саяпина, Product Owner личного кабинета платформы МТС Exolve рассказывает, каким рискам могут подвергнуться данные при работе с API и что можно сделать для их защиты.

Читать далее

Разработка RESTful API на Python с помощью HappyX

Время на прочтение2 мин
Охват и читатели2.6K

До этого я писал о разработке веб приложений на Nim здесь и здесь.


Что? Какой Nim? В заголовке указан Python!

Да, до недавнего времени писать веб приложения на веб фреймворке HappyX было возможно лишь с помощью Nim. На данный момент HappyX доступен и на Python. Любой желающий может воспользоваться библиотекой, если не знает Nim.


веб фреймворк HappyX


В этой статье мы создадим фейковое API GitHub'а.

Читать дальше →

Расширение возможностей веб-приложений с помощью WebAssembly и Python

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

В этой статье мы расскажем, как запустить программу на Python внутри другого приложения, использующего среду исполнения Wasm (хост), и заставить программу на Python общаться с хостом, и наоборот.

Пару месяцев назад мы добавили Python в Wasm Language Runtimes. Мы опубликовали собранный двоичный файл python.wasm, который можно использовать для выполнения скриптов на Python при помощи WebAssembly, чтобы обеспечить повышенную защиту и портируемость.

После этого релиза мы получили много отзывов о том, как сделать его ещё более полезным для разработчиков. Одной из часто упоминаемых тем стала необходимость двунаправленной связи между хостом на Wasm и кодом на Python, выполняемым в python.wasm.

Мы поработали над этом вместе с командой Suborbital и реализовали приложение, демонстрирующее двунаправленную связь благодаря реализации SE2 Plugin ABI. Эту работу позже внедрили в Suborbital SE2.

Пример приложения можно найти в WLR/python/examples/bindings/se2-bindings. Его легко запустить и оно позволит вам разобраться, как встраивать Python в приложение на Wasm и реализовывать привязки для двунаправленной связи.
Читать дальше →

Postman как инструмент документации

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

Postman в основном известен в качестве мощного инструмента для тестирования API. Но он также может значительно облегчить жизнь новым членам команды, аналитикам и клиентам, которые интегрируются с вами.

В этой статье я, SDET-специалист SimbirSoft Дарья, проведу обзор функций, с помощью которых Postman может помочь каждой из этих групп. Покажу на небольших примерах, как превратить набор запросов в то, что не стыдно будет пошарить коллегам, взаимодействующим с вашим API, и упростит жизнь новоприбывшим членам команды. Эта статья будет полезна специалистам различных уровней как в ручном, так и в автотестировании, а также бизнес- и системным аналитикам, для которых Postman сможет быть полезным для работы с документацией. 

Примеры буду приводить на ставшем классикой тренажере для практики отправки REST-запросов Petstore Swagger. Это имитация онлайн-зоомагазина, где можно манипулировать информацией о питомцах пользователей, а также создавать заказы.

? Читать далее

Telegram-бот для диагностики дисков в серверах. Как я собрал инфраструктуру и что использовал для разработки

Время на прочтение15 мин
Охват и читатели5.9K
image

Привет, Хабр! Меня зовут Дмитрий, я старший системный инженер в Selectel, работаю с серверами и клиентским оборудованием.

Ранее я написал статью о том, как появилась идея создать бота на базе API Telegram, который анализирует показатель S.M.A.R.T дисков. Теперь более детально расскажу о его разработке и о том, как было развернуто приложение.

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

Как системный инженер я изучаю новые вещи «методом тыка». Поэтому все представленные сборки приложения и способы его развертывания основаны на личном опыте и умении искать информацию в сети, а также применении «метода тыка» для получения конечного результата.
Читать дальше →

Крупнейшие IT-корпорации вводят «DRM для сайтов». Аттестация устройств и токены приватного доступа

Время на прочтение6 мин
Охват и читатели11K


Компании Google и Apple представили две похожие технологии «для борьбы с онлайн-мошенничеством и другими злоупотреблениями без ущерба для приватности». Инициатива Google называется Web Environment Integrity (WEI). Похожая технология от Apple под названием Private Access Tokens (токены приватного доступа) представлена в прошлом году, а сейчас интегрирована в MacOS 13, iOS 16 и Safari, то есть официально введена в строй.

Суть в том, что Google или Apple выполняют проверку клиентского устройства — и гарантируют серверу его аутентичность. В свою очередь, сервер отдаёт контент только «правильным» посетителям.

Некоторые специалисты считают, что аттестация устройств вредна по своей сути, поскольку вводит ограничения на доступ к контенту и блокирует контроль пользователей над собственными устройствами (например, можно запретить доступ к сайту для пользователей с рутованными телефонами, старыми версиями приложений или блокировщиками рекламы).
Читать дальше →

Insomnia — Инструкция по применению

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

Автор: Надежда Дудник

Заранее хочу сказать, что мне нравится Postman, просто Insomnia часто используемый инструмент у меня на работе, и важно поделиться информацией о его возможностях.

Содержание:

Читать далее

Symfony Json RPC API Bundle — простое API со всем необходимым

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

Как легко и быстро развернуть API на фреймворке Symfony с уже встроенной валидацией и авторизацией по токену?

Можно воспользоваться бандлом для Symfony 6+

Посмотреть на packagist

Посмотреть на gitflick

Читать далее

Как мы поднимаем dev-стэнд(ы) и гоняем полноценные тесты api на каждый коммит

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

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

На самом деле мы просто решили писать тесты не на отдельные классы/методы, а на интерфейс api, которым пользуются клиенты - на сервисы этого API. Тестируя их, мы убиваем двух зайцев: проверяем логику работы сервисов api + форматирование результата.

А такое тестирование сопряжено с несколькими проблемами.

Читать далее

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

Как написать удобный API — 15 рекомендаций

Время на прочтение6 мин
Охват и читатели9.6K

Разработка хорошего API требует особого внимания к деталям и соблюдения ключевых принципов программирования прикладных интерфейсов. Поэтому важно, чтобы у разработчиков были необходимые знания. Меня зовут Анастасия Иванова, я работаю в МТТ (входит в экосистему МТС) техническим писателем МТС Exolve. В этой статье я дам рекомендации по созданию API, которые помогут вам сделать его надёжным, масштабируемым и удобным в использовании. Самое интересное — под катом.

Читать далее

Сколько стоит Chat GPT?

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

А вы знаете, сколько стоит один запрос API Chat GPT?

Что скрывается за этим непонятным словом Tokens(токены)?

И как сделать запрос дешевле?

Узнать подробнее

Дизайн API в С++

Уровень сложностиСложный
Время на прочтение26 мин
Охват и читатели29K

В этом году на C++ Russia я рассказывал про API дизайн. Эта статья — пересказ и переосмысление моего доклада.

То, что я здесь расскажу, основано на моем личном опыте — про API дизайн я думаю уже лет 15, с того момента как в 2008м начал читать ревью библиотек на входе в boost (кстати, всем рекомендую).

В первой части я сфокусируюсь на базовых вещах, которые применимы практически к любому императивному языку программирования, не только к C++. Будет также часть 2, более приближенная собственно к C++, в которой я расскажу о некоторых фичах языка и стандартной библиотеки, которые помогут вам сделать ваши API еще лучше.

Читать далее

Как VMware создала проблему, а мы ее решили

Уровень сложностиСложный
Время на прочтение8 мин
Охват и читатели5.9K

Недавно в нашу компанию «Инфосистемы Джет» пришел заказчик с проблемой долгой реализации создаваемых портов на NSX-T (до 2 минут до момента запуска трафика). Основная боль заключалась в том, что новые поды K8s не всегда укладывались в timeout Health Check'a и процесс начинался опять.

Исходные данные у нас были такие. NSX использовался для построения микросегментированной сети в кластерах Kybernetes + Kyverno. Взаимодействие K8s и NSX было реализовано при помощи плагина VMware NCP. Несмотря на большое количество объектов, в интерфейсе все метрики по утилизации были в «зеленых» значениях, но ощущалось сильное замедление работы UI.

Читать далее

Для тех, кто ещё думает о переходе на vue 3

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

Всем привет! Мы ИТ-компания BSL - технологический партнер в продуктовой разработке и интеграции. И это наш первый обзорный материал для хабра-блога. В BSL мы успешно разрабатываем фронтовую часть проектов как с использованием старой версии фреймворка Vue, так и с использованием новой. В данной статье наш Team Lead Frontend Developer - Андрей,  рассказал о некоторых нововведениях Vue 3, которые могут стать для вас веской причиной для перехода на новую версию.

Читать далее

Генерация текстов, кластеризация и определение E-A-T и коммерческости запросов на нейросети OpenAI (GPT-3)

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели4.6K

Всем привет! Сегодня я хочу показать 5 примеров использования искусственного интеллекта (ИИ) на нейросети OpenAI (GPT-3) применительно к SEO: это кластеризация поисковых запросов, определение степени коммерциализации запросов, оценка качества контента Google E-A-T, генерация статей по ключевым словам и извлечение сущностей из текста.

Все это делается с регистрацией, СМС и только через VPN, но, в отличии от классических способов, применяемых сеошниками – без использования поисковых систем. Только OpenAI, только хардкор!

Читать далее

Как генерировать модели интерфейсов на основе спецификации на стороне frontend-приложений

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели12K

На связи снова Архитектурный комитет компании SimbirSoft, и мы продолжаем наш цикл статей, посвященных Design API First. Ранее мы уже писали о том, что представляет собой этот подход, приводили пример спецификации для сервиса аутентификации и рассказывали, как мы интегрируем этот паттерн в наш конвейер разработки.

Сегодня мы немного отвлечемся от бэкенда и разберем автоматизацию одной из рутинных задач на стороне frontend-разработки. А именно описание моделей интерфейсов для взаимодействия фронта с беком, а также написание API-сервисов, в которых фиксируются endpoints, методы запросов и формат передачи данных (query-параметры, заголовки, тело).

Читать далее

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