2007年10月12日
Catalyst::Plugin::MobileUserIDがそのままでは動かなかった
Posted by nene2001 at 13:15 /
Tag(Edit):
catalyst
perl
mobile
/
2 Comments:
Post /
View
/
1 TrackBack
/ Google Maps
HTTP::MobileUserID & Catalyst::Plugin::MobileUserID Released - Unknown::Programming -
Catalyst::Pluginの方、使ってみたら動かなかった。
追ってみると、中でHTTP::MobileAgentのget_headerメソッド使ってるんだけど、前提になっているCatalyst::Plugin::MobileAgentの方でHTTP::MobileAgentのオブジェクトが作られる際に、リクエストオブジェクトから作るのではなくUseAgent文字列だけから生成していたので、get_headerメソッドがうまく動いていなかった。
なので、かなりむりくり感あふれるけどCatalyst::Plugin::MobileAgentのprepare_headersをちょこっと変え。
sub prepare_headers {
my $c = shift;
$c->NEXT::prepare_headers(@_);
my $ma = $c->req->mobile_agent(HTTP::MobileAgent->new($c->req->user_agent));
$ma->{_request} = bless { r => $c->req }, "HTTP::MobileAgent::Request::HTTPHeaders";
}
これで動いたよ!
Related query words in Google & Yahoo
Related Books from Amazon
Trackback to this entry
TrackBack URL :
Trackbacks
Catalyst::Plugin::MobileAgentを修正してCPANにアップした
Excerpt: ・Catalystで携帯端末ID取得 ・Catalyst::Plugin::MobileUserID...
Weblog: Clouder::Blogger
Tracked: 2007年10月16日 00:33
Excerpt: ・Catalystで携帯端末ID取得 ・Catalyst::Plugin::MobileUserID...
Weblog: Clouder::Blogger
Tracked: 2007年10月16日 00:33
トラバどうもです。
同じ問題で以下の方がheaders渡す方法で解決してます。
http://www.geminium.com/chiba_blog/2007/06/07/7/
Catalyst::Plugin::MobileAgentの作者の方に対応してもらうのが一番良さそうですね。
Posted by: fbis at 2007年10月12日 13:26なるほど、こちらは最初$c->reqを渡してそりゃ動かんよね、ということで上の記事の形にしたんですが、$c->req->headersには気付きませんでした。
それがHTTP::Headersのサブクラスであるなら、そちらの方が本質的ですね。
Post a comment
![[ここギコ!]](http://kokogiko.net/logo.png)



・「定義できない」とのたまうものを自説根拠の説明の中で延々と使う不誠実(笑)(むにゅう!)
・絵文字標準化でのキャリア批判に思うこと(kokogiko)
・文化は変わっていくのは当たり前だからこそ、今問われているのはリアルタイムの選択(むにゅう!)
・絵文字標準化でのキャリア批判に思うこと(ひゅ〜)
・絵文字標準化でのキャリア批判に思うこと(kokogiko)
・文化は変わっていくのは当たり前だからこそ、今問われているのはリアルタイムの選択(kokogiko)
・文化は変わっていくのは当たり前だからこそ、今問われているのはリアルタイムの選択(むにゅう!)
・文化は変わっていくのは当たり前だからこそ、今問われているのはリアルタイムの選択(むにゅう!)
・文化は変わっていくのは当たり前だからこそ、今問われているのはリアルタイムの選択(むにゅう!)