1

カレンダーのイベントデータを取得するためにOauthを使用しています。トークンを正常に承認し、アクセストークンと交換しました。APIエンドポイントに対してgetリクエストを実行すると、https://www.google.com/calendar/feeds/default?gsessionid=xxxxxxxxxxxxなどへのリンクが記載された「一時的に移動」というページが表示されます。

jsonであろうとxmlであろうと、応答を解釈したいのですが、スローされているリダイレクトを超えることはできません。これに従う方法はありますか?

フィードへの私の呼び出しは次のとおりです。

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

1 に答える 1

2

うん、これは自分で対処しただけだ。リダイレクトであるため、「一時的に移動」と表示されますが、残念ながらoauthgemは自動的にフォローしません。あなたはこのようなことをすることができます:

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へのパッチに値するかもしれません...

于 2011-02-25T21:52:45.400 に答える