Un jour, une gem

12/03/2012

Lundi c'est Dropbox

gem install dropbox

Encore une gem à API

Aujourd’hui je vous présente la gem Dropbox, pour une utilisation simplifiée de l’API Dropbox.

Une fois la gem installée, il faut tout d’abord vous connecter au service :

session = Dropbox::Session.new('your_consumer_key', 'your_consumer_secret')
session.mode = :sandbox # ou :dropbox selon votre compte 
puts "Visit #{session.authorize_url} pour autoriser l'application, appuyer sur entrée quand c'est fait"
gets
session.authorize

L’étape suivante consiste à faire mumuse avec Dropbox :

session.upload('testfile.txt', '/')
uploaded_file = session.file('testfile.txt')
puts uploaded_file.metadata.size

Voilà c’est tout ! Pour ne pas avoir à refaire l’étape 1 à chaque fois vous pouvez toujours sauvegarder votre session :

File.open('serialized_session.txt', 'w') do |f|
  f.puts session.serialize
end

Et l’utiliser plus tard :

new_session = Dropbox::Session.deserialize(File.read('serialized_session.txt'))
account = new_session.account
puts account.display_name

D’autres exemples disponibles directement sur le dépôt de la gem :