人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

WEBページとアプリケーションとで、情報のやり取りを行う方法を教えて下さい。

<環境>
サーバ側
OS:Linux
WEBサーバ:Apache
クライアント
OS:特に指定なし
WEBブラウザ:特に指定なし

サーバ側では、Apacheと別のアプリケーションBを起動させておきます。
(アプリケーションBは自分で作成したプログラムです。)
クライアント側からサーバ側のURLを指定して、WEBページを開きます。
WEBページには、様々な情報入力エリア(ラジオボタン、チェックボックス、文字入力エリア)
及びその設定ボタンがあります。
(ページでの情報入力エリアは、CGIで実現しようと思っています。)

クライアント側から入力した情報をアプリケーションBに渡したいのですが、
どのような方法が考えられるでしょうか?
(データを渡すタイミングは、設定ボタンを押下した時)
また、
アプリケーションBから、
・WEBページを表示状況
・どのページを表示しているか?
等の情報も知りたいと思っています。

情報自体は、ファイルを介することでやり取りできるかとおもいましたが、
同期する術などがわかりません。

以上、
よろしくお願いします。

●質問者: futurista
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:Apache CGI Linux OS URL
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● openseed
●27ポイント

アプリケーションBは、どのようなプログラムなのでしょうか?

常駐しソケット通信などを行うのでしょうか?


もし、Apacheモジュールなどで作成されていないのであれば、CGI(perlやPHP)などでWrapperを作成する必要があるように思います。


Apacheを利用しない場合、「アプリケーションB」とのデータをやり取りするインターフェースはどのような想定でしょうか?

たとえば、コマンドラインで可能であれば、標準入力と標準出力を利用して、アプリケーションB用のWrapperを作成すればよいと思います。

参考(PHP):

http://php.mirror.camelnetwork.com/manual/ja/function.popen.php

◎質問者からの返答

ご回答有難う御座います。

>>常駐しソケット通信などを行うのでしょうか?

ご指摘の通りです。

>>もし、Apacheモジュールなどで作成されていないのであれば、CGI(perlやPHP)などでWrapperを作成する必要があるように思います。

「Apacheモジュールなどで作成されていない」とはどういう意味でしょうか?


2 ● garyo
●27ポイント

アプリケーションBをサーバーとして動かしておき、CGIのスクリプト(なりプログラム)が実行されたときソケットでアプリケーションBに接続して必要なデータ(現在表示したページなども含む)を渡すといいのでは。

http://q.hatena.ne.jp/answer

◎質問者からの返答

ご回答有難うございます。

「アプリケーションBをサーバーとして動かしておき、」

とは、どういう意味でしょうか?


3 ● Mook
●26ポイント

基本的には最初に回答された方のやり方ですが、

(1)Web でフォームを入力
(2)Submit で PHP を呼び出し、アプリケーションB を実行
(3)実行結果を表示

のようなやり方で出来ないでしょうか。


PHP(Perl でも考え方は一緒だと思います。) からの実行は system 関数で使用できます。

アプリケーションで必要な情報は引数として渡してあげればよいでしょう。


フォームで入力した値の参照は、PHPであれば extract 関数で変数として参照することが出来ます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ