- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PerlのサブルーチンからのリターンをHTMLに取り込む方法はありますか?)
PerlのサブルーチンからのリターンをHTMLに取り込む方法とは?
このQ&Aのポイント
- PerlのサブルーチンからのリターンをHTMLに取り込む方法について、現実的で実装可能な方法として以下の3つが考えられます。
- 1.HTMLからPerlで実装したcgiを実行し、復号化させたデータを<meta>タグの中で content属性を使用してCookieにセットする方法。
- 2.javascriptで復号化しセットする処理を記述する方法。BASE64の復号化については調査が必要です。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まずは、どんな設定のサーバーなのかが問題ですね。 1.SSIでcgiが実行できる 一番簡単に実現出来ます。 <meta>タグの中で content='<!--#exec cmd="a.cgi" -->' というように呼び出す。 2.SSIは使えない >3.上記1の中で記述したa.cgiを、切り出したデータを返すようにするのではなく、Cookieをセットするように改良してHTMLから呼び出す。 ページ内にデータを入れる必要がないなら、imgタグでそのcgiを呼び出します。 で、返すデータは、透過1×1gifにします。テキストを返しても、imgタグのサイズを1×1にすれば、見た目何も表示されません。 <img src="a.cgi" height="1" width="1"> アクセスログを取る時などにこの方法がよく使われます。 >2.上記1が無理な場合、javascriptで復号化しセットする処理を記述する。ただし、この場合、どうすればBASE64で復号化できるのかわかりません。 JavaScript でBASE64を複合する方法は私も解りません。 4.SSIは使えないが、どうしても、ページ内にcookie取得データを埋め込みたい ページ全部をcgi出力にするしかないですね。 i.埋め込みたい部分をページの他の部分と区別出来るコードにしておいて、 ii.元のhtmlをテンプレートとして読み込んで、 iii.文字列置換した後、 iv.ページデータ出力
お礼
hrm_mmmさん お返事遅くなり申し訳ありません。 SSIが使えないので、2の方法を試してみます。 <img>タグで呼び出す方法は知りませんでした。 ありがとうございます。 とても参考になりました!