Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 3948|Отговор: 0

[Комуникация] OData – OData срещу GraphQL

[Копирай линк]
Публикувано в 20.05.2023 г. 20:28:50 ч. | | | |
GraphQL е много популярен, много мощен, но е фундаментално различен от OData. Така че не е така, че едното е абсолютно по-добро от другото.



Има няколко точки, които мога да получа.

OData = SQL в URL


OData беше начин за сериализиране на SQL оператор в URL адрес

Трудно е да се ограничи възможността за заявки от страна на клиента.

OData Standardized


Спецификацията на OData е нейната сила, точно както RPC прави с RESTful. RESTful има спецификации и е лесен за разбиране, но не е лесно да се изрази всичко. RPC може да изрази всичко, но е твърде нестандартизирано.

Недостатъци в OData


OData обикновено е по-стегнат от състоянието на схемата на базата данни (като SQL Query), и след като схемата се промени, е по-трудно да се поддържа старата версия.

OData предпочита унифицирано управление и е трудно да се оптимизира за специални случаи.

Най-добре описано


OData е като SQL Query, GraphQL е като съхранена процедура. Вкусваш бавно.

Затова тези две трябва да съжителстват и да се допълват.


резюме

OData е като SQL Query, GraphQL е като съхранена процедура.

OData е като RESTful, а GraphQL е като RPC

Когато искаш проста унификация, ще откриеш, че RESTul е страхотен, SQL Query е достатъчен, OData е добър.

Но когато имате специални ситуации и не можете да използвате прост метод, RPC, запазена процедура, GraphQL подчертава своя чар.

Нека разгледаме сценариите на употреба и от двете страни. OData е склонен да бъде API за корпоративни приложения, като SAP. Обикновено по-простият, релационен модел на база данни.

GraphQL е интернет приложение, изложен API и какъвто и да е вид данни (като NoSQL)

В обобщение, GraphQL може да изразява повече (по-свободно) от OData, OData има правила (повече ограничения) от GraphQL

Кое е това, или GraphQL за външния свят, или OData за вътрешния – наистина зависи от проекта, който ще използва.

【OData】(1) Основни знания по OData
https://www.itsvse.com/thread-10508-1-1.html





Предишен:C# EPPlus Bulk Style клетки
Следващ:ASP.NET Core (деветнадесет) използва BackgroundService за изпълнение на фонови задачи
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com