- ベストアンサー
CGIで他のページに処理を委譲
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
なるほど。そういう事だったんですね。 >他の言語のライブラリですと、forwardというメソッドが用意されており Javaのサブレットとかで用意されているやつですよね。 う~ん、そうなるとperlでは難しいのかなぁ。 すいません、私の知識不足ですね。 もしかしたら、そういった事に対応したモジュールがCPANあたりに あるのかもしれないですが、わからないです。 ごめんなさい。
その他の回答 (2)
- uwi
- ベストアンサー率74% (55/74)
LWPなどでリクエストを送るのダメですか? 例えば、HTTP::Liteで単純に書くと、 --- #何か処理 my $GET = 何か処理した結果; use HTTP::Lite; my $http = new HTTP::Lite; my $req = $http->request("http://localhost/b.cgi?" . $GET) or die "$!"; print $req; LWPならもっと複雑なこともできます。
お礼
回答有難う御座います。 LWPについて少し見てみましたが、 クライアントからhttp処理を行うための ライブラリのようですね。 サーバでの処理の切り分け方について調べていましたが、 こちらも今後の参考にさせて頂きます。
- urakids
- ベストアンサー率77% (7/9)
ニュアンス的に捉えづらい内容ですが。 他ページに処理を渡す場合は引数を渡すか Cookie、セッションなどを使うと良いと思いますよ。 また、requireは別ページというか別プログラムに データを渡している訳ではではありません。 例えば、a.cgiとb.cgiがあり、 a.cgi内でb.cgiがrequireされていた場合 a.cgiが呼ばれた際にb.cgiがrequireされている場所に 展開されて、a.cgiが起動するという流れになります。 なので、べつにb.cgiに処理が移されている訳ではありませんよ。
補足
ご回答有難う御座います。 Cookie、セッションのみでは複数のスクリプト間で データを引き継ぐことは出来ますが、処理を任せることは できませんね。 処理の委譲というのは、一回のhttpレスポンスの間に 処理を行わせるスクリプトを分岐させられないか ということが言いたかったのです。 例をあげますと、 あるフォームからデータを送る際、 データを処理するa.cgiで入力エラーを検出したら、 エラーの画面を表示するb.cgiに処理を行わせ、 b.cgiの出力内容をhttpレスポンスとしたいのです。 他の言語のライブラリですと、forwardというメソッドが用意されており、 私の望むようなことが出来るのですが、 CGIモジュールのリファレンスを探しても forwardに該当する機能が見つからないようなので、質問させて頂きました。 説明不足で申し訳ありません。
関連するQ&A
- CGIの処理結果をHTML内に表示したい!
はじめまして。 CGI初心者です。 現在、とあるフリーのアンケートのCGI(perl)を改良していて、それは、アンケートに答えて、送信ボタンを押すと、CGIファイルの処理結果として、これまでのアンケートの集計結果がグラフで表示されるというものです。 その集計結果のみを、別ページ(左側や上部にメニューがあるもの)のHTML内に収めたいのです。 ※新しいウィンドウが開かなくてもOKです。 ※その別ページというのが私のオリジナルのページになります。 イメージとしては、 1)anket.html(アンケートに答える) ↓ 2)anket.cgi(返答内容とこれまでの集計を処理) ↓ 3)anket.html(集計結果が埋め込まれたHTMLファイルが表示される) 初心者なので、用語の使い方等間違っていましたらすいません。。 よろしくお願いします!
- 締切済み
- その他(プログラミング・開発)
- cgiを実行可能にするには
webでcgiを実行可能にするには webサーバー(windows NT)側は どのような設定をすればいいでしょうか。 perlで記述したいためActive perlはインストールしました。 その他にcgiの実行を許可する設定が必要ですか? 初心者ですので、見当違いな内容でしたらもうしわけありません。
- ベストアンサー
- ハードウェア・サーバー
- CGI動作後に元のページに戻る方法
Perl , javascript 初心者です。 あるページの一番下に,チェックボックスを設置して選択してもらうという簡単なアンケートを作っています。 submit ボタンを押した後,CGI(Perl) で処理を行い,その後元のページの元いた場所(アンケートがあるところ)を表示させることはできますか? また,できれば submit ボタンの横に「ご協力ありがとうございました」というコメントを表示したいと思います。 良い方法があれば教えて下さい。
- ベストアンサー
- Perl
- 別サーバーのcgiを実行させる
あるサーバーで動作しているcgiスクリプトから、別のサーバーに置いてあるcgiスクリプトを実行させる方法はあるでしょうか? require 'http://…/…/test.cgi'; としても実行することは出来ませんでした。 googleで検索したところrequireではURL指定ができないと解説しているサイトがありましたので、requireを使わずに、(CGI.pm等の標準モジュール(?))なども使わないで他のサーバーに設置したcgiを動作させる方法があれば、教えていただきたいです。
- ベストアンサー
- CGI
- 他のサイトの情報の読込み
よく翻訳サイトとかにあるような、 他のサイトのWebページを読み込んで、それを加工して表示するようなCGIを作りたいと思っています。 Perlで他のサイトのWebページを読み込むことはできるのでしょうか?
- ベストアンサー
- Perl
- 処理終了後、他のページへジャンプする方法
perl での処理を終了後、他のページ(html)に自動的に飛ばしたいのですが(JavaScriptは使わずに)、どうすればよいでしょう。
- ベストアンサー
- Perl
- こんなCGIまずないと思いますが・・・?探してます。
以前、ある特定のページをWEB上で誰かが開いたら、 CGIでこちらにメールが自動的に来て知らせてくれるCGIは ありますか?という質問をさせていただきましたところ、 見事にそのようなCGIをお教え頂きまして感謝感動でした。 今回こそは、本当にあり得ない難しいと思われる希望なのですが、 そのページを誰から閉じたら、メールで知らせてくれるCGI ってありますかぁ~???? あるわけ無いですよね・・・<(笑;)>
- ベストアンサー
- CGI
- pcや携帯へ振り分けるcgiのことですが
現在フリーのcgiをテスト使用していますが、indexページへのアクセスのみを振り分けています。 自HP内へ複数(10個)記載してあるURLへのアクセスに対して、 HTTP://******.jp/かつdocomoなら、このページへ。 auならこのページへ。PCなら・・・ 同様に HTTP://○○○○.jp/かつdocomoなら、このページへ。 auならこのページへ。PCなら・・・ と言う風にアクセスURL,条件が設定できるcgiを見つけられなかった為、困っています。 (perl初心者です) 上記の様な設定ができるcgiやHPをご存知の方、何卒教えてください。 また、自分の勉強の為上記の条件のperlでの記述が わかる方いらっしゃいましたら、是非ともお願いいたします。
- ベストアンサー
- その他(インターネット・Webサービス)
- CGIの使い方について教えてください
CGIの使い方について教えてください。 自分が運営しているホームページに掲示板を作成したいので、以下のCGIを使うことにななりました。ですが、初心者のためうまく出来ません。詳しい方、教えてください。 http://www.kent-web.com/bbs/joyful.html? joyful.cgi を エディタ で開いて以下の箇所を修正します。 #!/usr/local/bin/perl (プロバイダで定められたPerlへのパスを指定します) と説明されていますが、Perlの意味が解りません。これは一体なんでしょう? 設定のやり方等を詳しく教えてください。
- ベストアンサー
- その他(インターネット・Webサービス)
- ひとつのWebページに他のページを表示させたい
題名じゃわかりにくかったと思いますが ひとつのWebページ(html)の隅っこに他のWebページ(cgi) を表示させるようなページを作りたいのですが、タグの記述はどうすればいいですか?
- 締切済み
- HTML
お礼
perlではこのような処理の切り分け方は一般的でないのでしょうか。 CPANからモジュールを探せばいいとのご意見、参考にさせて頂きます。