Как стать автором
Обновить
31.83
Рейтинг

API *

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

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

Разбираемся с концепцией аутентификации в HTTP

Python *API *Flask *
Из песочницы

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

Хотелось создать статью, которая поэтапно раскроет базовые концепции аутентификации и авторизации на практике, после чего можно применять эти знания, чтобы реализовать свою кастомную аутентификацию и примерно понимать, как она работает в очередном пакете для django-rest-framework, flask или fastapi. А вообще в целом эти концептуальные знания должны пригодиться(надеюсь) и для реализации аутентификации в других экосистемах. В статье есть упрощения, код для учебных целей.

Читать далее
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 6.3K
Комментарии 3

Новости

SOLID на практике в автоматизации тестирования

Java *API *
Recovery mode
Из песочницы

Как на практике реализовать все принципы и упростить разработку тестирования BDD ?

Примером будет интеграционное тестирование, но вам ничего не помешает реализовать для End2End

Читать далее
Всего голосов 6: ↑2 и ↓4 -2
Просмотры 3.1K
Комментарии 0

Простое REST api для сайта на php хостинге

Разработка веб-сайтов *PHP *Программирование *API *
Recovery mode
Из песочницы

Иногда бывает необходимо развернуть не большое рест апи для своего сайта, сделанного по технологии СПА (Vue, React или др.) без использования каких-либо фреймворков, CMS или чего-то подобного, и при этом хочется воспользоваться обычным php хостингом с минимальными усилиями на внедрение и разработку.  При этом там же желательно разместить и сам сайт СПА (в нашем случае на vue).

Использование php позволяет для построения ендпоинтов апи использовать даже статические php файлы, размещаемые просто в папках на хостинге, которые предоставляют результат при непосредственном обращении к ним. И хотя, видимо в своё время, такой подход послужил широкому распространению php мы рассмотрим далее более программистский подход к созданию апи, который очень похож на используемый в библиотеке Node.js Express и поэтому интуитивно понятен, и прост для освоения.

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

Как силами робота автоматизировать проверку номера, его подтверждение или изменение

Блог компании МТТ API *Облачные сервисы *

«Здравствуйте! Я робот-помощник <службы доставки>. Звоню Вам для подтверждения заказа, который оформлен на номер <number>. Он же будет контактным для курьера. Вы подтверждаете номер для заказа <number>?».

Меня зовут Дмитрий Лупонос. Я программист 1С, который любит интеграции со сторонними сервисами (да, я существую). Я веду задачи, которые иногда касаются управления голосовым роботом. И да, это не спам, а совершенно добровольное согласие пользователя, который самостоятельно ставит галочку в поле «Звонки от робота».

С начала пандемии число пользователей доставки выросло лавинообразно. «По-старинке» через колл-центр работать становится неэффективно и затратно, поэтому бизнес ищет новые решения. Одно из таких – первичный звонок после заказа голосовым роботом, который проговаривает данные заказа и уточняет некоторые детали.

После предыдущей статьи, предлагаю отойти от 1С, и посвятить время анализу достаточно сложного сценария звонка.

Нажать для раскрытия темы
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 1.2K
Комментарии 2

[API как продукт] Управление ожиданиями

API *Управление продуктом *

Наконец, последний аспект, который хотелось бы осветить в рамках данного раздела — это управление ожиданиями партнёров в отношении развития вашего API. С точки зрения коммуникации потребительских качеств API мало отличается от любого другого B2B программного обеспечения: и там, и там вам нужно как-то сформировать у разработчиков и бизнеса понимание о допустимом SLA, объёме функциональности, отзывчивости интерфейсов и прочих пользовательских характеристиках. Однако у API как продукта есть и специфические особенности.

Это последняя глава моей книги, посвящённой API. Книга целиком: ссылка на книгу.

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

Humane API REST Protocol

Разработка веб-сайтов *Анализ и проектирование систем *XML *API *TypeScript *
Перевод

Здравствуйте, меня зовут Дмитрий Карловский и я… как скульптор, отрезаю всё лишнее, чтобы оставить лишь самую мякотку, которая в наиболее лаконичной и практичной форме решает широкий круг задач. Вот лишь несколько спроектированных мною вещей:


  • MarkedText — стройный легковесный язык разметки текста (убийца MarkDown).
  • Tree — структурированный формат представления данных (убийца JSON и XML).

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


HARP OData GraphQL
Architecture ✅REST ✅REST ❌RPC
Common uri query string compatible ⭕Back ✅Full
Single line query
Pseudo-static compatible ⭕Back ⭕Partial
Same model of request and response
File name compatible
Web Tools Friendly
Data filtering ⭕Unspec
Data sorting ⭕Unspec
Data slicing ⭕Unspec
Data aggregation ⭕Unspec
Deep fetch
Limited logic
Metadata query
Idempotent requests ✅Full ⭕Partial ❌Undef
Normalized response
Читать дальше →
Всего голосов 20: ↑10 и ↓10 0
Просмотры 2.9K
Комментарии 24

Как мы на хакатоне написали простой инструмент для интеграционного тестирования

Блог компании ATI.SU API *C# *Тестирование веб-сервисов *

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

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

Почему я люблю и ненавижу NestJS?

JavaScript *Анализ и проектирование систем *Node.JS *API *TypeScript *

NestJS прекрасный фреймворк под Node.js, вдохновлённый серьёзными фреймворками Spring, ASP.NET Core, Simfony.

Так что же там внутри прекрасного и ужасного?

Читать далее
Всего голосов 12: ↑7 и ↓5 +2
Просмотры 3.9K
Комментарии 13

Как REST выродился в собственную противоположность

Разработка веб-сайтов *JavaScript *Программирование *API *
Перевод

Меня все сильнее раздражает, сколько людей готовы записывать в REST API любой интерфейс на основе HTTP. Сегодня приведу в качестве примера SocialSite REST API. Это же вызовы удаленных процедур (RPC). Он просто выкрикивает RPC. Связность между элементами на экране настолько сильная, что это творение заслуживает рейтинга X.

Читать далее
Всего голосов 25: ↑21 и ↓4 +17
Просмотры 7.1K
Комментарии 18

[API как продукт] Тестовая среда

Тестирование IT-систем *API *Управление продуктом *

Если через ваш API исполняются операции, которые имеют последствия для пользователей или партнёров (в частности, стоят денег), то вам необходимо иметь тестовую версию этого API. В тестовом API реальные действия либо не происходят совсем (например, заказ создаётся, но никем не исполняется), либо симулируется дешёвыми способами (например, вместо отправки SMS на номер пользователя уходит электронное письмо на почту разработчика).

Однако во многих случаях этого недостаточно.

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

[API как продукт] Документация

API *Управление продуктом *Подготовка технической документации *

Это глава 30 моей бесплатной книги про API.

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

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

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

Из вагона направо: как работают подсказки 2ГИС

Блог компании 2ГИС C++ *API *Геоинформационные сервисы *

Весной мы добавили новую подсказку о том, в какую сторону выходить из вагона метро. Меня зовут Влад, я программист С++, и на примере этой подсказки хочу рассказать, из чего состоит жизненный цикл релиза новых фич в 2ГИС. И сколько всего происходит, когда добавляешь — казалось бы — небольшую новую строку с текстом.

Читать далее
Всего голосов 21: ↑20 и ↓1 +19
Просмотры 4.8K
Комментарии 6

Прагматичная разработка

PHP *Анализ и проектирование систем *API *Геоинформационные сервисы *Управление проектами *
Tutorial

Недавно выдалось свободное время и я сделал простой проект про specialty-кофейни на Кипре: сайт и телеграм-бот по всем канонам "большой" разработки. Люблю хороший кофе 😊

Делюсь своим процессом разработки и рекомендациями как сделать всё задуманное без потери времени.

Читать далее
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 5.5K
Комментарии 3

Проект — электрический помощник для редакции

Блог компании RUVDS.com Хостинг Python *Программирование *API *
Tutorial

Казалось бы, для чего редакции может понадобиться telegram-бот? Мы смогли вполне точно ответить на это, когда число наших авторов начало превышать разумные возможности редакторов. В новых экономических реалиях ценна каждая рабочая минута, потому встала задача убрать часть работы, связанной с повторяющимися вопросами, которые можно было бы свалить на бота, для улучшения комфорта взаимодействия всех сторон и, конечно, экономии бесценного времени. А учитывая, что большая часть общения происходит именно внутри телеграма, то и было принято решение завести себе там электрического помощника. Как говорится: телеграм-бот — это не только 40 строчек кода, но ещё и очень полезный выхлоп.
Читать дальше →
Всего голосов 31: ↑30 и ↓1 +29
Просмотры 3K
Комментарии 8

Работа над неразмеченными данными с QGIS и opentripmap на практике

Maps API *API *Big Data *Визуализация данных *Data Engineering *

В этом посте я хочу поделиться интересным опытом работы с неразмеченными данными при помощи открытого ресурса opentripmap.

Задача

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

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

Способы общения микросервисов для самых маленьких

Блог компании Maxilect Анализ и проектирование систем *API *Распределённые системы *Микросервисы *

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

В этой статье поговорим о том, какие бывают способы общения в микросервисной среде. Расскажу на пальцах, какие обычно предъявляются требования к общению сервисов, почему большинство использует REST API, даже при том, что у него тоже хватает минусов, и при чем тут Kafka.

Рассчитываю на новичков, но если у вас есть интересный опыт в этих вопросах - добро пожаловать в комментарии.

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

[API как продукт] Поддержка пользователей

API *Управление продуктом *

Поскольку API — программный продукт, разработчики фактически будут задавать вопросы о работе того или иного фрагмента кода, который они пишут. Этот факт сам по себе задирает планку требований к качеству специалистов поддержки до очень высокого уровня, поскольку прочитать код и понять причину проблемы может только разработчик же. Но это полбеды: другая сторона проблемы заключается в том, что, как мы упоминали в предыдущих главах, львиная доля этих запросов будет задана неопытными или непрофессиональными разработчиками, что в случае любого сколько-нибудь популярного API приводит к тому, что 9 из 10 запросов будут вовсе не про работу API.

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

Вливаемся в Московскую биржу

.NET *API *C# *
Из песочницы

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

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

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 7.4K
Комментарии 13

Мой первый бот для Сервисдеска: умещается в кармане, расширяется как Вселенная

Блог компании DataLine Java *API *Service Desk *Kotlin *
Из песочницы

Привет, меня зовут Юрий, и я фулстек-разработчик в DataLine. В компании занимаюсь созданием и развитием внутренних и внешних ИТ-сервисов: Сервисдеска, мастер-справочников, учета оборудования. 

Но, как говорится, каждый разработчик в жизни должен сделать 3 вещи: развернуть дерево, распарсить DOM и вырастить своего чат-бота. О последнем и поговорим: расскажу, как делал своего первого чат-бота для нашего Сервисдеска, какие задачи и как решал, с какими трудностями и способами преодоления столкнулся. 

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

[API как продукт] Технические способы борьбы с несанкционированным доступом к API

API *Управление продуктом *

Задача отсеивания нежелательных запросов, в общем случае, состоит из трёх шагов:

- идентификация подозрительных пользователей;

- опционально, запрос дополнительного фактора аутентификации;

- вынесение и применение решения об ограничении доступа.

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

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