2011-01-16 5 views
1

Мы используем Oauth для сбора данных календаря. Я успешно разрешил токен и обменял его на токен доступа. Когда я выполняю запрос на получение конечной точки API, я получаю страницу с надписью «Moved Temporarily» со ссылкой на что-то вроде https://www.google.com/calendar/feeds/default?gsessionid=xxxxxxxxxxxxИнтеграция API данных календаря Google

Я хотел бы интерпретировать ответ, будь то json или xml, но я не могу выходите за пределы перенаправления, которые он выбрасывает. Любая идея, как следовать этому?

Вот мой призыв к сырью:

access_token = current_user.google.client 
    response = access_token.get(ConsumerToken::GOOGLE_URL).body 
+0

Привет, который рубин библиотеки вы использовали для доступа к Google Docs? – Crashalot

ответ

2

Да, просто занимался этим сам. В нем говорится: «Перемещено временно», потому что это перенаправление, которое, к сожалению, не соответствует автоматически. Вы можете сделать что-то вроде этого:

calendar_response = client.get "http://www.google.com/calendar/feeds/default" 
if calendar_response.kind_of? Net::HTTPFound # a.k.a. 302 redirect 
    calendar_response = client.get(calendar_response['location']) 
end 

Это может быть достойным патч OAuth ...

+0

Привет, какую библиотеку Ruby вы использовали для доступа к Документам Google? – Crashalot

+0

@Crashalot Я использую [OAuth Ruby gem] (http://oauth.rubyforge.org/) с [oauth-plugin] (https://github.com/pelle/oauth-plugin). –

+0

Спасибо! Ты так много! Это был последний шаг в моем задании oauth, и теперь он работает :-). – Denis

Смежные вопросы