как интегрировать node.js в приложение kohanaPHP для уведомления об обновлении статуса в реальном времени - PullRequest
2 голосов
/ 03 июля 2010

Я хочу добавить уведомление об обновлении статуса в режиме реального времени в приложение kohanaPHP с базой данных MySQL. Я занимаюсь разработкой с использованием node.js, хотя, оглядываясь по сторонам, я не смог найти никаких руководств по интеграции node.js в PHP, я хотел бы знать, возможно ли это, и как это можно сделать, и на каких типах серверов я должен размещать сайт php. Из того, что я получил, кажется, что node.js не работает на серверах Apache. буду благодарен за помощь.

Ответы [ 2 ]

1 голос
/ 09 апреля 2012

Узел - это собственный сервер, поэтому вы должны сделать запрос в приложение node.js Вы можете сделать это с помощью Curl . Еще один способ - использовать функцию HMVC от Kohana для выполнения внешнего запроса. В этом примере предполагается, что ваше приложение node.js возвращает json.

 //Make an external request using post.
$json_request = Request::factory('http://www.example.com/path/to/nodejs')
        ->method('POST')
        ->post('my_key', 'value')
        ->headers('Accept','application/json')
        ->execute();

//Get the json from the request.
$json_string = $json_request->body();

//Turn the json string into an array.
$json_array = json_decode($json_string);

//Take a look at it with debug.
echo Debug::vars($json_array);
0 голосов
/ 03 июля 2010

Первый: вы не запускаете узел ни на одном Apache или другом веб-сервере. Это собственный сервер. Поэтому вам необходимо реализовать обмен данными между вашим сервером Apache / PHP и узлом.

Вы можете вызвать вашу программу узла через HTTP-запрос из PHP, как только что-то изменится, и вставить новые данные в ваш узел.

Таким образом, вам не нужен доступ к MySQL для узла, который пока недоступен.

...