Is there a good comparison of GraphQL & OData in terms of performance, developers usability, community, etc.. All articles that I find in the Internet are very bias.
What would be the best way to return a big bulky JSON or binary data?
I was assured by the company that "both within the standards organizations and the industry, OData is alive and growing." I didn't think much more about it, but suddenly I notice it being put to new uses in the age of Blazor and ASP.NET Core, championed at Microsoft by Hassan Habib, sofware engineer II.
Will GraphQL Kill REST APIs? The answer to this question is a big “NO”. There won't be any issue with your already working REST API. They will not change after your migration to GraphQL.
In computing, Open Data Protocol (OData) is an open protocol that allows the creation and consumption of queryable and interoperable REST APIs in a simple and standard way.
REST stands for REpresentational State Transfer which is a resource based architectural style. Resource based means that data and functionalities are considered as resources. OData is a web based protocol that defines a set of best practices for building and consuming RESTful web services.
I have researched and also tried with Both GraphQL in Dot Net and Odata in DotNet Web API to create a working demo and What I found are
Yes, I have reviewed and read article by Telerik which have described in detail. Comparision PDF For GraphQL and Odata I am attaching side by side comparison image only you can dig out detail in Reference link GraphQL vs OData.
Here, No in API Versioning/ maintenance is positive meaning single endpoint and get rid of two versioned API
Mainly OData service is used when you want to provide access to your database with minimal effort for CRUD Operation.
However if you aware about Sharepoint REST API and Office 365 REST API It is based on OData and provides a wide range of API. Now Microsoft is building universal API which is called Graph API or Microsoft Graph which by default enabled for CORS request and unified endpoints to Request from Office 365, dynamics 365, Outlook Exchange API, Onedrive API etc. Which are also supports OData.
It also does not seem like a good idea to use the POST method to request data. And apparently the amount of data needed to make a request to the server is much greater. According to examples from the Sumit Sarkar article:
The amount of data trafficked to make a request is much greater in GraphQL than in OData. Although, the result (response) is the same.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With