- 締切済み
cookieを介さずにCGI/PerlとセッションIDを遣り取りする方
cookieを介さずにCGI/PerlとセッションIDを遣り取りする方法 Adobe AIR HTML/Ajax で cookieを介さずにサーバーのCGI/PerlとセッションIDを遣り取りする方法について、何か情報ありませんでしょうか。 AIRはcookieをOSと共有するようなのですが、既定ブラウザがFirefoxの場合、共有できません。 幸い、AIRはローカルでのファイル操作が可能なので、自前でセッションIDの遣り取りと管理をさせたいと考えております。 で、以下の様にしてみましたが、nullが返ってくるだけでした。 PerlのセッションID発行はCGI::Sessionを使用しています。 [code] var cgi_url = 'http://server_name/cgi/session.pl'; var login_name = 'hoge'; var login_auth = 'fuga'; var msg = $.ajax( { type :'POST', url :cgi_url, data :'login_name=' + login_name + '&login_auth=' + login_auth }).responseText; alert(msg); [/code]
- みんなの回答 (2)
- 専門家の回答
お礼
BellBell様 お礼遅くなりまして申し訳ございません。 ありがとうございす。 たびたび回答を頂いているのに大変申し訳ないのですが、Flex開発はまだ手が出ずにおります。 おそらくAIRAliases.js経由で実現可能な内容だと思われるので、調べてみようと思います。 ちなみに、nullが返ってくる問題ですが、どうやらPOST送信のdataパラメータの記述の仕方を間違えていた様で、以下の記述でCGIリクエストの結果を受け取れました。 【JavaScript】 var cgi_url = 'http://server_name/cgi/session.pl'; var login_name = 'hoge'; var login_auth = 'fuga'; var result_html = $.ajax( { type :'POST', url :cgi_url, data : // ここの記述が間違っていました { 'login_name':login_name, 'login_auth':login_auth }, dataTyle:'html' }).responseText; あとはレスポンスヘッダをjQueryで処理できれば文句なしなのですが。 JavaScriptのgetResponseHeaderだとブラウザ判別が面倒で。 (まあ、AIR だからSafari(Webkit)だけ気にすればよいのですが)