HTTP_Clientでクッキーを操る

カテゴリ: php / author: uechoco / 2007年06月27日 20:36:49
この記事を読む時間:23くらい

今日はHTML_QuickFormに引き続き、HTTP_Clientにも悩まされる日だった。

やりたいことはHTTP_Clientでクッキーを操作すること。HTTP_Client自体はHTTP_Requestのラッパーなので、クッキーを扱うことができるし、HTTP_Client_CookieManagerなるクラスもエンドユーザー・ドキュメントには記載されているので、簡単にできると思っていたが、使い方がわからないし、クッキーの取得の仕方がわからない。

仕方なく、HTTP/Client.phpを直に見て、探ってみると、エンドユーザー・ドキュメントにはないものがいくつかあった。隠さずに表に出してくれよ・・・

まず1つ目は、HTTP_Clientクラスのコンストラクタには第3引数が指定でき、それはHTTP_Client_CookieManagerであるということ。これによって、自前で用意したHTTP_Client_CookieManagerクラスを使いまわすことができる。詳しく言うと、一度保存したHTTP_Client_CookieManagerクラスをもう一度ここに代入することでクッキーを再現できるということ(だと思う)。

そして、2つ目は、HTTP_Clientクラスには内部で保持しているHTTP_Client_CookieManagerを出力するためのgetCookieManager()メソッドが用意されているということ。phpDocumentorのマニュアルには載っていたが、エンドユーザー・ドキュメントにはどこにも載っていない。これで、HTTPアクセスのときに使用したクッキーを保存することができる。

この2つをあわせれば、HTTP_Clientでクッキーを再現できる(と思うのだが・・・)。

それにしても・・・この手の日本語の資料は全くと言っていいほどないですね。みんな使わないのかな・・・


1件のコメント »

  1. コメント by Issie — 2009 年 9 月 11 日 @ 18 : 53 : 57

    ありがとうございます、私も探していました!
    英語ばかりだったので、少しでも日本語の情報あると助かります。

この投稿へのコメントの RSS フィード。 TrackBack URI

コメントする

Copyright © 2012 うえちょこ@ぼろぐ. WP Theme created by Web Top.