2010-09-11 11 views
14

Così ho iniziato a imparare Rails. Ora che Rails 3 è fuori, voglio attenermi all'apprendimento del modo in cui Rails 3 fa le cose. Una delle cose che voglio imparare è come utilizzare i servizi web/lavorare con API REST di terze parti/creare applicazioni "mashup". Ho fatto solo lavori minimi come questo con PHP e librerie pre-costruite.Per iniziare a consumare servizi Web in un'applicazione Ruby on Rails 3

Qualcuno può per favore guidarmi ad alcune risorse, best practice o darmi una breve lezione su come iniziare a lavorare con questi tipi di API? Quali gemme dovrei usare? Alcuni esempi di codice per iniziare sono molto apprezzati.

Aggiornamento: Sto specificatamente cercando di utilizzare l'API di Google Libri (non autenticata). Poiché non esiste una libreria client per questa API, mi chiedo come gli altri sviluppatori di Ruby/Rails lavorino con API che non vengono fornite con la propria libreria Ruby. Ecco perché sto cercando una soluzione più generica per lavorare con l'API "Compila il vuoto".

Aggiornamento: Dopo alcune ricerche, ho notato la libreria Net :: HTTP. Tutti i tutorial che ne parlavano erano piuttosto vecchi. Questa è ancora la migliore libreria da utilizzare per il consumo di servizi web RESTful? O c'è una gemma più recente che rende questo più facile? Voglio solo sapere quale gem/library dovrei usare e come lavorare con il risultato XML/JSON che viene restituito.

Aggiornamento: Questa presentazione è stata davvero utile. Si parla di un gruppo di diverse librerie e mostra esempi di alcune delle librerie di seguito indicate: http://www.slideshare.net/pengwynn/json-and-the-apinauts

+0

hai un servizio Web specifico che desideri utilizzare? O sei interessato a puntare a uno stile di servizio web specifico, ad esempio un feed RSS non autenticato rispetto a un'API che richiede un token API? –

+0

Vedere l'aggiornamento per la spiegazione. – Andrew

risposta

9

Sono un grande fan di HTTParty.

È un livello di astrazione su Net :: HTTP con un piccolo DSL per i servizi Web. Here's un buon esempio di quanto sia facile da usare.

Non è senza alcune verruche (molte dipendenze) ma è davvero la strada da percorrere se siete dalla parte dei consumatori.

+0

+1 per HTTParty. Rende davvero facile il consumo degli endpoint di riposo; Il più recente wrapper di Ruby attorno alle API lo usa. –

0

Weary è un DSL davvero accurato per il consumo di servizi RESTful.

Chiaramente ispirato da HTTParty ma un po 'più recente e un po' più conciso.