Таксономия веб-API - RPC с одной конечной точкой - PullRequest
0 голосов
/ 18 июня 2020

https://www.google.com/books/edition/Designing_Web_APIs/Dg1rDwAAQBAJ?hl=en&gbpv=1&printsec=frontcover - отличный источник информации о дизайне веб-API. Авторы сравнивают и противопоставляют три стиля: REST, RPC и "GraphQL":

Comparison of request-response API paradigms

Первые два - хорошо известный дизайн. узоры с известными названиями. Третий шаблон, который передает данные запроса JSON в одну конечную точку службы, не помещая какие-либо детали запроса в HTTP-глаголы или URL-адреса, также хорошо известен, но авторы ссылаются на него, используя имя определенного c API. а не имя шаблона.

Должно быть общепринятое имя для шаблона веб-API «single-endpoint» или «JSON data», используемого GraphQL. Что это?

Дополнительный вопрос: какие еще популярные веб-API используют чистый JSON интерфейс данных?

Если бы я писал книгу, я бы сказал REST (на основе ресурсов) и RP C (основанный на действии) - это две парадигмы, GraphQL следует паттерну RP C, а то, что в книге называется «RP C», на самом деле является гибридным подтипом «RP C -URL», который вытягивает действие из данные запроса и помещают их в URL.

Но вместо моего собственного мнения я ищу терминологию, которая, скорее всего, будет понятна всему сообществу.

...