我們正試圖通過安全連接(WSS)實現websocket,並在我們的項目中實現了cboden/ratchet。所有Works正常連接罰款。環顧文檔和Github項目頁面,似乎新的React SecureServer類尚未在Ratchet中實現。將Ratchet WsServer與React SecureServer結合使用(WSS/SSL)
在我們發現的問題a post about it,它將不被支持,直到後來的版本,但是,我們現在需要它:D 在問題報告中,他們建議使用新的React SecureServer類與Ratchet類組合。我們嘗試並得到了一個致命的錯誤:
Catchable fatal error: Argument 1 passed to React\Socket\SecureServer::__construct() must be an instance of React\Socket\Server, instance of Ratchet\Http\HttpServer given.
部分地方出了問題:
$webServer = new Ratchet\Server\IoServer(
new React\Socket\SecureServer(// Using React class here as suggested
new Ratchet\Http\HttpServer(
new Ratchet\WebSocket\WsServer(
new Ratchet\Wamp\WampServer(
$pusher
)
)
)
),
$webSock,
array(
'local_cert' => 'xxxx.pem',
'allow_self_signed' => true,
'verify_peer' => false
)
);
我們正在做一些愚蠢的事? :P
好的,Thx的響應。現在我收到第二個參數的錯誤:'可捕獲的致命錯誤:傳遞給React \ Socket \ SecureServer :: __ construct()的參數2必須實現接口React \ EventLoop \ LoopInterface,React \ ZMQ \ Context的實例' – Brainfeeder
I假設'$ loop'是你存儲事件循環的變量,所以你存儲哪個變量,在那裏使用它。 – WyriHaximus
啊,是的,我嘗試使用$上下文,因爲我認爲它返回$循環實例。 服務器似乎現在再次運行...瀏覽器無法連接。我們收到一個'SSL_ERROR_NO_CYPHER_OVERLAP'錯誤代碼。有沒有辦法指定使用哪種類型的加密? – Brainfeeder