在PHP 中建立WebSocket 伺服器可能具有挑戰性,特別是在使用過時或有錯誤的庫時。儘管進行了多次嘗試,問題中提供的代碼仍無法建立連接,導致錯誤:「Firefox 無法建立與ws://localhost:12345/ 的伺服器的連接。」
要解決此問題,請考慮以下步驟:
以下PHP 程式碼提供了使用Ratchet 實作WebSocket 伺服器的簡單範例:
<code class="php">use Ratchet\MessageComponentInterface; use Ratchet\ConnectionInterface; class MyWebSocketHandler implements MessageComponentInterface { private $clients; public function __construct() { $this->clients = new SplObjectStorage; } public function onOpen(ConnectionInterface $conn) { // Send a welcome message to the client $conn->send('Welcome to the WebSocket server!'); // Add the client to the collection $this->clients->attach($conn); } public function onMessage(ConnectionInterface $from, $msg) { // Send the message to all connected clients foreach ($this->clients as $client) { $client->send($msg); } } public function onClose(ConnectionInterface $conn) { // Remove the client from the collection $this->clients->detach($conn); } public function onError(ConnectionInterface $conn, \Exception $e) { // Handle errors $conn->close(); } }</code>
以上是為什麼我的 PHP WebSocket 伺服器無法建立連線並顯示錯誤「Firefox 無法與 ws://localhost:12345/ 處的伺服器建立連線」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!