質問: html上(javascript)からcgiを実行する方法 javascriptから外部実行ファイル(javascriptファイルではなくperlなどのcgi) を実行する方法を探しています。 下記のようにindex.htmとtest.cgiファイルを用意して、index.htm内の javascriptから外部cgiを実行させ、cgiの結果(test.cgiでは単に 『test』と表示するのみ)を表示したいと考えています。 利用増ですが、cgiやssiが使用できないサーバにindex.htmを置いて、 cgiが使用できるサーバ上のcgi結果を取得したいものです。 通常のcgiのように、1ページでcgi結果を表示するものではなく、 htmlファイルの一部にcgi処理結果を表示させたいものです。 そもそも、ssiを使用しなければ下記のようなhtml内にcgiなどの 実行結果を表示する事は出来ないのでしょうか。 よろしくお願い致します。 ※下例のプログラムではcgi結果は表示されませんでした・・・。 ------------------------------------------- ------------------------------------------- #!/usr/bin/perl print "test"
回答: いわゆるajax的(リッチコンテンツ、)な表示法を考えてらっしゃるようですが、セキュリティの関係でjavascriptの仕様上、外部サーバへの接続(xmlhttprequest)は出来ない事になっています。 ですが、全く似たような事が出来ない訳ではなく、疑似表示法としてフレームやiframeを使えば表示可能かと思います。 それ以外の方法としては、flashを使えば外部サーバとのやり取りも可能です(外部サーバはドメイン指定)。flashはアニメや音声だけでなく、このような使い方も可能です。 参考まで。