[前][次][番号順一覧][スレッド一覧]

rails:949

From: kot-hara@s...
Date: Fri, 17 Feb 2006 14:55:13 +0900
Subject: [rails:949] Re: LoginGeneratorを使ったページにnet/httpでアクセス

岩本さん、的確なアドバイスありがとうございました。
おかげで無事うまく動作させることができました。
おっしゃる通り、2回目のリクエストのCookieヘッダーに、1回目のレスポンスのSet-Cookieヘッダーの値をセットしたらすんなりとうまく行きました。

コードは以下の通りです。

Net::HTTP.new("localhost",80).start do |h|
res = h.request_post("/",'user_login=tanaka&user_password=hogehoge&login=Login+%C2%BB')
header = Hash.new
header['cookie'] = response['set-cookie']
res = h.get(res['location'], header)
end 

> 始めまして。岩本と申します。
> 
> LoginGeneratorを使ったことが無いので、的外れだったらごめんなさい。
> 
> 2回目のリクエストの際にクッキーのセッションを送っていないので、
> セッションが引き継がれていないのではないでしょうか。
> 多くのWebアプリケーションでは、クッキーにセッション情報を保持していますので
> この場合もそれかなと。
> レスポンスのSet-Cookieヘッダーから適切な値を取得して、2回目のリクエストの
> ヘッダーにセットしてあげる必要があると思います。
> 
> 06/02/14 に kot-hara@s...<kot-hara@s> さんは書きました:
> > 原と申します。
> >
> > LoginGeneratorを使って各ユーザが自分あての情報のみを閲覧できるサイトを構築しています。
> > 
> その一環で、各ユーザごとのRSSをフィードする機能を実装し、Net::HTTPを使ってRSSを読み取ろうとしているのですが、
> それ以前に、認証後のページに入ることができずに困っています。
> > 具体的には
> >
> > Net::HTTP.new("localhost",80).start do |h| res = 
> > 
> h.request_post("/",'user_login=tanaka&user_password=hogehoge&l
> ogin=Login+%C2%BB')
> > p res.body    # "<html><body>You are being <a 
> href=\"http://localhost/account/welcome\">redirected</a>.</bod
> y></html>"
> > res = h.get(res['location'])
> > p res.body    #"<html><body>You are being <a 
> href=\"http://localhost/\">redirected</a>.</body></html>"
> > end
> >
> > となってログイン後のページを取得することができません。
> > なんとなくセッションが維持されていないのかなーという気はしているのですが・・・
> > どなたか宜しくご教授願います。
> >
> >
> >
> > --
> > ML: rails@r...
> > 使い方: http://QuickML.com/
> >
> >
> 
> --
> ML: rails@r...
> 使い方: http://QuickML.com/
> 
> 

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

->     949 2006-02-17 06:55 [kot-hara@s...       ] Re: LoginGeneratorを使ったページにnet/httpでアクセス
       951 2006-02-17 11:44 ┗[jirokun@u...        ]