2010-09-11 9 views
14

Je commence donc à apprendre les Rails. Maintenant que Rails 3 est sorti, je veux continuer à apprendre les Rails 3. Une des choses que je veux apprendre est de savoir comment consommer des services web/travailler avec des API REST tierces/créer des applications «mashup». J'ai seulement fait un travail minimal comme ceci avec PHP et bibliothèques pré-construites.Mise en route de la consommation de services Web dans une application Ruby on Rails 3

Est-ce que quelqu'un peut me diriger vers des ressources, des pratiques exemplaires ou une leçon rapide sur la façon de commencer à travailler avec ces types d'API? Quelles pierres dois-je utiliser? Un exemple de code pour me lancer serait très apprécié.

Mise à jour: J'essaie spécifiquement d'utiliser l'API Google Livres (non authentifiée). Comme il n'y a pas de bibliothèque client pour cette API, je me demande comment les autres développeurs de Ruby/Rails travaillent avec des API qui n'ont pas leur propre bibliothèque Ruby. C'est pourquoi je suis à la recherche d'une solution plus générique pour travailler avec l'API "fill in the blank".

Mise à jour: Après quelques recherches, j'ai remarqué la bibliothèque Net :: HTTP. Tous les tutoriels qui en ont parlé étaient assez vieux. Est-ce toujours la meilleure bibliothèque à utiliser pour consommer des services Web RESTful? Ou y a-t-il un Gem plus récent qui rend cela plus facile? Je veux juste savoir quelle gemme/bibliothèque je devrais utiliser, et comment travailler avec le résultat XML/JSON qui est retourné.

Mise à jour: Cette présentation a été très utile. Il mentionne un tas de différentes bibliothèques et donne des exemples de certaines des bibliothèques mentionnées ci-dessous: http://www.slideshare.net/pengwynn/json-and-the-apinauts

+0

Avez-vous un service Web spécifique que vous souhaitez utiliser? Ou souhaitez-vous cibler un style de service Web spécifique, par exemple un flux RSS non authentifié ou une API nécessitant un jeton d'API? –

+0

Voir mise à jour pour explication. – Andrew

Répondre

9

Je suis une assez grande fan de HTTParty.

C'est une couche d'abstraction sur Net :: HTTP avec un joli petit DSL pour consommer des services web. Here's un bon exemple de la facilité d'utilisation.

Ce n'est pas sans certaines verrues (beaucoup de dépendances), mais c'est vraiment la voie à suivre si vous êtes du côté de la consommation.

+0

+1 pour HTTParty. Cela facilite vraiment la consommation de points de terminaison de repos; Les wrappers Ruby les plus récents autour des API l'utilisent. –

0

Weary est un DSL vraiment soigné pour consommer des services RESTful.

Clairement inspiré par HTTParty mais un peu plus récent et un peu plus concis.

Questions connexes