問題:
サーバー側で実行されているプログラムとクライアント側で実行されているJavaScriptの間を行き来できるかどうかを確認しようとしています。プログラムからのすべての出力はJavaScriptに送信されてユーザーに表示され、ユーザーからのすべての入力はJavaScriptからプログラムに送信されます。
JavaScriptに出力を受信させ、入力を送信させることは、AJAXを使用して簡単に実行できます。問題は、サーバー上ですでに実行されているプログラムにアクセスする方法がわからないことです。
試み:
PHPを使おうとしましたが、乗り越えられないハードルにぶつかりました。これで、を使用して問題なくPHPでプログラムを実行できますproc_open
。stdin
とストリームにフックstdout
でき、プログラムから出力を取得して入力を送信することもできます。しかし、私はこれを一度しか行うことができません。
同じPHPスクリプトを再度実行すると(?)、プログラムを再度実行することになります。したがって、複数の実行から得られるのは、プログラムがstdout
最初に何回も書き込むものだけです。
現在、すでに実行中のプログラムのとストリームproc_open
にアクセスする方法がわからないため、入力と出力のみを処理することになっているスクリプトで使用しています。私の見方では、同じPHPスクリプトを複数回実行しても、実行中のプログラムの状態を維持する必要があります。およびストリームによって返され、フックされたリソースを維持します。stdout
stdin
proc_open
pipes
stdin
stdout
$_SESSION
動作しません。リソースを維持するためにそれを使用することはできません。
プログラムでそのようなことを行ったり来たりする方法はありますか?どんな助けでも本当にありがたいです。