Вопросы с тегом «api-design»

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

6
Есть ли шаблон для обработки конфликтующих параметров функции?
У нас есть функция API, которая разбивает общую сумму на ежемесячные суммы на основе заданных дат начала и окончания. // JavaScript function convertToMonths(timePeriod) { // ... returns the given time period converted to months } function getPaymentBreakdown(total, startDate, endDate) { const numMonths = convertToMonths(endDate - startDate); return { numMonths, monthlyPayment: …
38 api-design 

3
REST API - должен ли API возвращать вложенные объекты JSON?
Когда дело доходит до API JSON, рекомендуется ли выравнивать ответы и избегать вложенных объектов JSON? В качестве примера, скажем, у нас есть API, похожий на IMDb, но для видеоигр. Существует пара сущностей: Game, Platform, ESRBRating и GamePlatformMap, которые отображают игры и платформы. Допустим, вы запрашиваете / game / 1, который …
38 design  rest  api-design  json 

5
Как описать архитектурный сдвиг, который намеренно нарушает стандарты REST?
Я предлагаю внести изменения в очень плохо спроектированный программный проект, который страдает от множества проблем. На высоком уровне проект использует Angular на внешнем интерфейсе и использует различные API REST; что все замечательно (я не вижу необходимости менять нашу технологию или инструменты). Проблема заключается в том, что база кода непропорционально больше …

6
Должен ли HTTP API всегда возвращать тело?
Есть ли какой-то стандарт в отношении ответов HTTP API? Прочитав эту беседу я начал задумываться. Мы разрабатываем наш общедоступный HTTP JSON API на моей работе, и мы ничего не возвращаем, когда это не является строго необходимым (например, PUT для / resource / {id} возвращает только 200, когда OK или соответствующий …
33 rest  api-design  http 

10
Почему Math.Sqrt () является статической функцией?
При обсуждении статических методов и методов экземпляров я всегда думаю, что это Sqrt()должен быть метод экземпляров числовых типов, а не статический метод. Почему это? Это очевидно работает на значение. // looks wrong to me var y = Math.Sqrt(x); // looks better to me var y = x.Sqrt(); Типы значений, очевидно, …

4
Должны ли микросервисы общаться друг с другом?
Я разрабатываю приложение с использованием Micro-Services, и я не уверен в том, какой механизм лучше использовать для сбора данных из нескольких служб. Я считаю, что есть два варианта: Интегрируйте межсервисный механизм связи, который позволяет сервисам общаться напрямую. API-шлюз будет вызывать отдельную службу, которая затем вызывает другие службы для сбора данных, …

7
Зачем использовать непрозрачный «дескриптор», который требует приведения в открытом API, а не типобезопасный структурный указатель?
Я оцениваю библиотеку, публичный API которой в настоящее время выглядит следующим образом: libengine.h /* Handle, used for all APIs */ typedef size_t enh; /* Create new engine instance; result returned in handle */ int en_open(int mode, enh *handle); /* Start an engine */ int en_start(enh handle); /* Add a new …

3
Есть ли список общих имен пользователей, которые нужно зарезервировать в новой системе?
Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Мне нужно зарезервировать имена пользователей на моем новом сайте. Они обычно делятся на три категории 1) имена пользователей, которые никто не должен иметь (например: admin, user, service, …

4
Микросервисы и хранение данных
Я подумываю о переносе монолитного REST API на микросервисную архитектуру, и меня немного смущает хранение данных. На мой взгляд, некоторые из преимуществ микросервисов: Горизонтально масштабируемый - я могу запустить несколько избыточных копий микросервиса, чтобы справиться с нагрузкой и / или отключением сервера. Слабосвязанное - я могу изменять внутренние реализации микросервисов, …

3
RESTful API: HTTP-глаголы с общими или конкретными URL-адресами?
При создании API RESTful следует ли использовать HTTP-глаголы для одного и того же URL-адреса (когда это возможно) или мне следует создавать определенный URL-адрес для каждого действия? Например: GET /items # Read all items GET /items/:id # Read one item POST /items # Create a new item PUT /items/:id # Update …

10
Дизайн API: конкретный или абстрактный подход - лучшие практики?
При обсуждении API-интерфейсов между системами (на бизнес-уровне) в нашей команде часто бывают две разные точки зрения: некоторые люди предпочитают более общий, скажем так, общий абстрактный подход, а другие - прямой «конкретный» подход. Пример: дизайн простого API «поиск человека». конкретная версия будет searchPerson(String name, boolean soundEx, String firstName, boolean soundEx, String …

3
Можно ли вернуть HTML из API JSON?
В моем текущем проекте я отвечаю за реализацию службы, которая включает использование только что созданных API RESTful, документированных как исключительно поддерживающие JSON. Клиент последовательно делает запросы с заголовком accept 'application / json' и типом контента 'application / json'. Однако некоторые конечные точки отправляют ответ с типом содержимого HTML, даже с …

4
При создании API я должен придерживаться небольших функций и большого количества вызовов или нескольких вызовов и больших функций?
У меня есть платформа рельсов, которую я поддерживаю. На нем много разных веб-приложений. Однако теперь клиент запрашивает API, чтобы они могли держать пользователей на своем сайте, но воспользоваться некоторыми автоматизированными задачами, которые у нас есть. Платформа используется для создания страховых приложений и позволяет осуществлять их покупки онлайн, а также предоставляет …

2
Должен ли я создать свои собственные коды состояния HTTP? (а-ля Твиттер 420: Повысьте спокойствие)
Этот вопрос перенесен из-за сбоя сервера, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 6 лет назад . В настоящее время я реализую HTTP API, мой первый в истории. Я тратил много времени, просматривая страницу Википедии с кодами состояния HTTP, потому что я полон решимости реализовать …
24 api-design  http 

3
Рекомендуемый код состояния HTTP для ответа «превышен лимит плана»
Я разрабатываю REST API для проекта, в котором пользователи всегда используют один из нескольких «планов» - каждый план определяет некоторые ограничения ресурсов, например, максимальное количество пользователей, которое может иметь учетная запись, или максимальное количество данных, которые они могут загрузить. После достижения одного из этих ограничений пользователи могут обновить свои планы …
24 rest  api-design  http 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.