Я создаю API REST для базы данных точек продаж на своем рабочем месте.
Дело в том, что в зависимости от ситуации я пытаюсь получить один и тот же результат (элемент из таблицы «Сток») с разными входами.
Например, у нас есть таблица штрих-кодов, которая указывает на StockID, StockID является первичным ключом для строк таблицы Stock, у нас также есть «код детали» для ссылки на заказ, код детали - это код, который наши поставщики используют для ссылки на товары мы держим, и у нас есть таблица, очень похожая на таблицу штрих-кодов, где парт-код указывает на StockID.
Проблема в том, что иногда в таблице PartCode есть 2 строки, которые имеют один и тот же код кода детали, но указывают на два разных товара. Это означает, что у меня не может быть более очевидных вызовов API REST.
В настоящее время у меня есть такие URL:
example.com / stockid / {123} (вероятно, единственный логический вызов REST)
example.com / barcode / {123} (он принимает штрих-код, выполняет один SQL-запрос, получает строку соответствующего запаса и соотносится с ней
example.com / partcode / {123} (Это аналогично описанному выше, хотя в некоторых случаях этот код связан с результатами нескольких строк
Теперь это второй по глубине API REST, который мне пришлось создать, и первый был намного проще, потому что я создавал веб-приложение и мог следовать хорошим соглашениям. Но я не знаю, как начать писать этот REST API должным образом, кажется, что вся информация, которую я нашел, будет работать эффективно или будет чиста и эффективна для базы кода, и я хотел бы сделать это правильно и поддерживать ее как обслуживаемую. насколько это возможно.
На что обратить внимание
- У меня нет возможности изменить структуру самой базы данных
- Я использую NodeJS + ExpressJS в качестве внутреннего сервера для написания этого REST API
- Я рад начать с того, что кажется наиболее практичным и логичным способом написать это
- Я застрял, потому что я не хочу иметь огромное количество неоднозначных и в противном случае бесполезных URL-адресов API, я просто хочу найти правильный способ ссылки на таблицу Stock, учитывая различные способы ее поиска
- База данных является базой данных Microsoft SQL Server 2014