Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 3948|Svar: 0

[Kommunikation] OData – OData vs GraphQL

[Kopiera länk]
Publicerad på 2023-05-20 20:28:50 | | | |
GraphQL är mycket populärt, mycket kraftfullt, men det är fundamentalt annorlunda än OData. Så det är inte så att någon är absolut bättre än den andra.



Det finns några poänger jag kan förstå.

OData = SQL i URL


OData var ett sätt att serialisera en SQL-sats till en URL

Det är svårt att begränsa klientsidans frågeförmåga.

OData Standardiserad


ODatas specifikation är dess styrka, precis som RPC gör med RESTful. RESTful har specifikationer och är lätt att förstå, men det är inte lätt att uttrycka allt. RPC kan uttrycka allt, men det är för ostandardiserat.

Brister i OData


OData är vanligtvis tajtare än databasens schematillstånd (så det är som SQL Query), och när schemat väl ändras är det svårare att underhålla den gamla versionen.

OData föredrar enhetlig hantering, och det är svårt att optimera för specialfall.

Bäst beskrivet


OData är som SQL Query, GraphQL är som en lagrad procedur. Du smakar långsamt.

Därför måste dessa två samexistera och komplettera varandra.


sammanfattning

OData är som SQL Query, GraphQL är som en lagrad procedur.

OData är som RESTful, och GraphQL är som RPC

När du vill ha enkel unifikation kommer du att tycka att RESTFul är bra, SQL Query räcker, OData är bra.

Men när du har speciella situationer och inte kan använda en enkel metod, RPC, stored procedure, framhäver GraphQL sin charm.

Låt oss titta på användningsscenarierna för båda sidor. OData tenderar att vara ett API för företagsapplikationer, såsom SAP. Vanligtvis det enklare, relationella databasmönstret.

GraphQL är en internetapplikation, ett exponerat API och en vilken typ av data som helst (såsom NoSQL)

Så sammanfattningsvis kan GraphQL uttrycka mer (friare) än OData, OData har regler (fler begränsningar) än GraphQL

Vilket är det, eller GraphQL för den yttre världen, eller OData för det interna, det beror verkligen på vilket projekt som använder det.

【OData】(1) Grundkunskaper om OData
https://www.itsvse.com/thread-10508-1-1.html





Föregående:C# EPPlus bulkstilceller
Nästa:ASP.NET Core (nitton) använder BackgroundService för att köra bakgrundsuppgifter
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com