In che modo la progettazione dell'API si discosta dalla progettazione generale dello sviluppo di applicazioni Web? [duplicare]

0

Se stavo lavorando su un'applicazione web che progetta e scrive un'API, in cosa differisce da uno sviluppo generale di applicazioni Web?

Quali elementi dovrei considerare e prendere in considerazione? Esistono processi standard da seguire durante la creazione di un'API che potrebbe essere utilizzata da migliaia di client?

    
posta user86834 06.04.2013 - 23:56
fonte

2 risposte

0

Dipende.

In un recente progetto, ho reso l'applicazione web e l'API quasi identiche. Se tu avessi link usato dall'applicazione web come una pagina o tramite AJAX, la stessa richiesta con lo stesso URI sarebbe anche utilizzato tramite l'API, servito solo con tipi MIME diversi (tipo HTML o JSON per l'applicazione Web, JSON o XML per l'API).

Funziona e ha il suo enorme vantaggio: scrivi il codice una volta. Almeno per la maggior parte della base di codice, poiché ci sarebbero discrepanze. Ad esempio, non avrebbe senso usare CAPTCHA nella tua API; d'altra parte, l'API avrebbe probabilmente alcune chiamate aggiuntive che non sono utilizzate dall'applicazione web.

Puoi anche designare l'API in un modo molto diverso, distinto dalla tua applicazione web. Questo ti dà ad esempio l'opportunità di avere un'API RESTful, mentre l'applicazione web userebbe le sessioni.

    
risposta data 07.04.2013 - 00:23
fonte
0

Potresti, ad esempio, avere un'applicazione web che è interamente lato client, e quindi non richiede un'API. Un particolare trucco, è che i browser ti limiteranno ad avviare solo GET o POST HTTP, laddove un'API RESTful, ad esempio, potrebbe richiedere anche PUT e DELETE HTTP. Ad esempio, il framework Ruby on Rails ha un pezzo di middleware Rack che traduce i POST HTTP con un parametro _method = [PUT | DELETE] alla corrispondente chiamata API PUT | DELETE.

    
risposta data 07.04.2013 - 09:34
fonte

Leggi altre domande sui tag