JSON o JavaScript Object Notation è semplicemente un formato o uno standard per i dati. È un formato concordato per la trasmissione di qualcosa come un nome di accesso OPPURE qualcosa che deve essere consumato da un servizio REST.
Vedi questa parte: link
Although originally derived from the JavaScript scripting language, JSON is a language-independent data format, and code for parsing and generating JSON data is readily available in a large variety of programming languages.
Non fa parte di alcun particolare linguaggio di programmazione, quindi sistemi diversi possono passare facilmente i dati, se sanno che stanno usando JSON.
Come per REST è semplicemente uno stile di architettura utilizzato per i servizi web.
Vedi questa parte: link
Un modo per pensarci, è se volessi scrivere un servizio web con cui molti computer diversi possano parlare ... e scambiare informazioni. Potresti scrivere il tuo servizio web per accettare i dati tramite l'URL
http://www.myservice.com/specialRESTService?name=punkouter
La risposta potrebbe essere un oggetto JSON che segnala la ricezione dei tuoi dati.
{
"name": "punkouter",
"status": "service downloaded your data",
}
Non avevo mai sentito parlare di OData, quindi l'ho cercato su google:
OData is built on the AtomPub protocol and JSON where the Atom structure is the envelope that contains the data returned from each OData request. An OData request uses the REST model for all requests. Each REST command is a POST, GET, PUT, PATCH, or DELETE http request (mapping to CRUD) where the specifics of the command are in the url.
GET: Get a collection of entities (as a feed document) or a single entity(as an entry document).
POST: Create a new entity from an entry document.
PUT: Update an existing entity with an entry document.
PATCH: Update an existing entity with a partial entry document.
DELETE: Remove an entity.
Sembra che OData sia qualcosa di scritto per accrescere un'architettura in stile REST vaniglia .. Ma sembra che possa darti qualche cosa in più per farti andare, invece di dover scrivere cose da zero in C # o in qualunque lingua tu sia utilizzando.
Se lavori ti sta spingendo a usare OData, staresti ancora usando JSON..ma all'interno del framework OData / standard scritto da Microsoft e altri.
Would anyone ever parse the results of a OData (sic) query in javascript??
Sì, dal momento che (sembra) sta usando JSON. Sarebbe perfettamente naturale usare JS.
Maybe OData is more about providing a generic endpoint for ALL clients to get detailed information from a query that JSON does not provide ? So if I was a provider of data then I suppose that is what Odata is for ?
Odata fornirebbe un servizio REST .. ma con alcuni servizi standard aggiunti su un semplice endpoint del servizio REST "generico". Ai clienti non interessa se si sta utilizzando OData o si sta eseguendo il proprio servizio C #. fino a quando le risposte erano in un formato concordato (come JSON). Tuttavia, per il tuo lavoro forse vogliono usare OData perché fornisce molte funzionalità "out of the box".