RubyのCGIクッキー
HTTPプロトコルはステートレスなプロトコルです。 しかし、ビジネスのウェブサイトのために、それは異なるページ間でセッション情報を保持する必要があります。
ユーザサイトの登録プロセスは、ページをジャンプする必要があるが、情報を充填する前に失われないことを確実にしたい場合。
この場合、クッキーの良いは、私たちが問題を解決するのに役立ちます。
クッキーはどのように動作しますか?
彼らはより親しみやすい、人間の文化のブラウジング環境を提供するだけでなく、より正確な訪問者の情報を収集するために、サイトを閲覧したユーザを与えたいので、サイトの設計時に、ほぼすべてのWebデザイナーは、クッキーを使用します。
書き込みと読み出し
クッキーのセットは、データ・オブジェクトのコレクションとリクエスト・レスポンスオブジェクトに属し、あなたは要求または応答の使用とそれに先行する必要があります。
通常、クッキーを送信するクライアントのための構文は次のとおりです。
クライアント上に作成され、存在しないクッキーの設定に設定すると、クッキーがすでに存在する場合、それは置き換えられます。 クッキーは、クライアントのHTTPトランスポート・ヘッダー情報の一部として送信されるので、通常はブラウザのHTMLファイルに送信されたタグの前に配置され、クライアントコードのクッキーに送信されます。
クッキー読みたい場合は、Requestオブジェクトのクッキーのコレクションを使用する必要があり、その使用は次のとおりです。データのクッキーのコレクションを交換するために、ブラウザに任意のデータをダウンロードする前だけでなく、サーバーに、ブラウザとサーバーのことに注意してくださいブラウザがサーバのダウンロードされたデータの受信を開始すると、クッキーのデータ交換は、前のプログラムで真でResponse.Buffer =を追加するために、エラーを回避するために、停止されます。
属性コレクション
- 1.Expires属性:この属性は、限り、この期間は自動的に削除されます後場合はオープンなWebページが保存されたクッキー、クッキーを呼び出すことができますように制限時間内に期限を設定するクッキーに使用されます。 以下のような:設定クッキーそれは自動的に削除されます2004年4月1日まで有効です。 クッキーは、ブラウザを開くには最初から、そのライフサイクルを有効期間を設定していない場合は、ライフサイクルの終わりに、ブラウザを閉じて次の実行が再び開始され、それぞれの実行後に終了します。
- 2.Domain属性:この属性は、クッキーデータ伝送の一意性を定義します。 のみの場合> "_blankに捜狐のホームページを特定のクッキーを転送するとき、あなたは以下のコードを使用することができます。
- 3.Pathプロパティは:Pathプロパティは、デフォルトのパスのアプリケーションを設定されていない場合クッキーは、必ず指定のパス要求に対して発行されている定義します。
- 4.Secure属性は:クッキーは、ユーザーが読み取ることができますを指定します。
- 5、名前=値:Cookieが設定され、取得するためのキーと値のペアです。
Rubyの処理クッキー
あなたはCGI.outは、Cookieヘッダーを設定して呼び出し、ブラウザに情報を送信、クッキーや店舗のテキストメッセージと呼ばれるオブジェクトを作成することができます。
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = CGI::Cookie.new('name' => 'mycookie', 'value' => 'Zara Ali', 'expires' => Time.now + 3600) cgi.out('cookie' => cookie) do cgi.head + cgi.body { "Cookie stored" } end
次に、以下のように、私たちは、このページに戻って、そしてCookieの値を探します。
#!/usr/bin/ruby require "cgi" cgi = CGI.new("html4") cookie = cgi.cookies['mycookie'] cgi.out('cookie' => cookie) do cgi.head + cgi.body { cookie[0] } end
CGI :: Cookieオブジェクトは、次のパラメータのインスタンスが含まれています。
パラメータ | 説明 |
---|---|
名前 | これは、クッキーの名前を指定します。 |
値 | クッキーの所定の値。 |
有効期限が切れます | クッキーの規定。 |
パス | 引当金は、サーバパスをクッキー。 |
ドメイン | Cookieドメインの規定。 |
確保します | 接続がセキュアなHTTPS経由でクッキーを転送するかどうかを指定します。 |