문제 : 나는 서버 측에서 실행되는 자바 스크립트는 클라이언트 측에서 실행되는 프로그램 사이에 앞뒤로 다시 등을 할 수 있는지 확인하기 위해 노력하고있어자바 스크립트 앞뒤로 실행중인 프로그램과
. 프로그램의 모든 출력은 사용자에게 표시되도록 JavaScript로 보내지고 사용자의 모든 입력은 JavaScript에서 프로그램으로 전송됩니다.
JavaScript를 사용하면 AJAX로 쉽게 출력을 보낼 수 있습니다. 문제는 서버에서 이미 실행중인 프로그램에 액세스하는 방법을 모르겠다는 것입니다.
시도는 :
내가 PHP를 사용하려고하지만 난 이상 도약하지 수있는 몇 가지 장애물에 달렸다. 이제 proc_open
을 사용하여 아무 문제없이 PHP로 프로그램을 실행할 수 있습니다. stdin
및 stdout
스트림에 연결할 수 있으며 프로그램에서 출력을 가져 와서 입력을 보낼 수도 있습니다. 하지만 한 번만 할 수 있습니다.
동일한 PHP 스크립트가 다시 실행되면 (?) 다시 프로그램이 실행됩니다. 따라서 여러 번의 사형에서 벗어나면 프로그램이 무엇이든 stdout
에 여러 번 쓰게됩니다.
바로 지금 실행중인 프로그램의 stdout
과 stdin
스트림에 액세스하는 방법을 모르기 때문에 지금은 입력 및 출력 만 처리하도록되어있는 스크립트에서 proc_open
을 사용합니다. 내가 본대로, 나는 동일한 PHP 스크립트의 여러 번 실행에 대한 실행에서 내 프로그램의 상태를 유지해야한다. 리소스은 proc_open
으로, pipes
은 stdin
및 stdout
개의 스트림으로 연결되어야합니다.
$_SESSION
이 작동하지 않습니다. 자원을 유지하는 데 사용할 수 없습니다.
프로그램과 함께 이러한 방법을 사용할 수 있습니까? 어떤 도움이라도 대단히 감사합니다.
그는 클라이언트/서버 통신에 ajax를 사용하는 것이 좋습니다라고 언급했습니다. 나는 그가 PHP와 같은 서버 측 언어가 proc_open과 같은 것으로 계속 실행되는 프로세스 "프로그램"과 지속적으로 통신 할 수있는 방법을 찾고 있다고 생각한다. 물론 모든 로직을 websocket 또는 혜성 솔루션으로 대체 할 수는 있지만 서버에서 실행중인 다른 프로세스와 '이야기하고 싶다'는 것 같았습니다 ... –