2016-05-31 62 views
1

使用CakePHP,我想在服務器(CakePHP)和客戶端(瀏覽器)之間建立雙向連接以實現實時數據交換(例如聊天)。CakePHP和套接字

因此我不想讓頁面重新加載每次我發射一條消息。

根據我的理解,這是要麼使用AJAX,這是不建議聊天,或通過WebSocket。

但是,我無法找到如何建立這樣的連接。 CakePHP文檔中的一章提到了HTTPClients,但不幸的是這並不是我想要的。

但是,我發現這個基於Socket的庫稱爲棘齒: http://socketo.me/docs/flow 有人曾試圖建立任何類似的東西嗎? 我甚至不知道如何將此Socket集成到我的CakePHP項目中。

回答

0

您的問題有所有答案。無論是長輪詢還是websockets。您可以使用ratchetreactPHP。 要將其包含在cakePHP中,您可能需要使用像this這樣的插件。

0

我已經成功地用php thruway構建了一個獨立的實時應用程序,雖然我還沒有嘗試過cakePHP。無論如何,thruway可以通過作曲家安裝,所以它應該到你的cakePHP的根文件夾中的各個供應商文件夾,然後它可以被命名空間,並可能從控制器的動作等調用Client.php ... thruway的路由器必須運行(之前)作爲單獨執行。

https://github.com/voryx/Thruway

還要檢查AutobahnJS,因爲它遵循的pub/sub模式一樣高速公路的。

祝你好運。