Le maintien de cookies entre Mécaniser les demandes

Je suis en train d'utiliser la version de Ruby de Mécaniser l'extraire de mon employeur billets à partir d'un billet de système de gestion que nous allons loin de ce que ne peut pas fournir une API.

Problème est, il semble Mécaniser n'est pas de garder les cookies entre les post appel et la get appel indiqué ci-dessous:

require 'rubygems'
require 'nokogiri'
require 'mechanize'

@agent = Mechanize.new

page = @agent.post('http://<url>.com/user_session', {
                                            'authenticity_token' => '<token>',
                                            'user_session[login]' => '<login>',
                                            'user_session[password]' => '<password>',
                                            'user_session[remember_me]' => '0',
                                            'commit' => 'Login'
})

page = @agent.get 'http://<url>.com/<organization>/<repo-name>/tickets/1'
puts page.title

user_session est l'URL vers laquelle le site la page de connexion de Postes, et j'ai vérifié que ce fait se connecte moi. Mais la page qui renvoie de la get appel est le " Oups, vous n'êtes pas connecté!' page.

J'ai vérifié que clicking liens sur la page qui renvoie de la post appel fonctionne, mais je ne peux pas vraiment en arriver là où j'ai besoin d'aller sans JavaScript. Et bien sûr je l'ai fait avec succès sur le navigateur avec le même login.

Ce que je fais mal?

OriginalL'auteur adamjford | 2011-08-12