【问题标题】:Socket.io and PHP integrationSocket.io 和 PHP 集成
【发布时间】:2016-12-29 12:24:44
【问题描述】:

我有一个插座。我从header.php 登录到套接字。我正在从我的所有页面中调用header.php,如下所示:

<?php
require_once("header.php");
?>

当我像这样加载所有页面时,我的套接字将断开连接然后重新连接。我只想在套接字上登录一次,但我不知道该怎么做。如何防止它断开连接并重新连接?

header.php JavaScript 代码块:

<script  src='http://xxx.xxx.xx.xx:1xx0/socket.io/socket.io.js'></script>
<script>    
var socket = io.connect( "http://xxx.xxx.xx.xx:1xx0/");
</script>

【问题讨论】:

    标签: javascript php jquery node.js socket.io


    【解决方案1】:

    简短的回答是你不能。 Web 服务器重新启动每个页面加载。如果您想与您的套接字建立持久连接,可以在服务器上的 php cli 应用程序中执行此操作,并使用 websockets 等与浏览器通信。

    【讨论】:

    • @MuhammedAlmaz。不确定答案是否,但可能是一种方法。可以使用 AJAX,但是 ws 很酷 (1) 启动 websocket 服务器 (wss)。在 CLI 下运行的 php 是持久的,因为 Web 服务器加载和终止。 (2) 您的 php 套接字应用程序挂起 wss onconnect 方法。 (3) 你的html页面通过js加载并连接到wss服务器。 document.addEventListener('DOMContentLoaded', function wsinit() { socket = new WebSocket('ws://127.0.0.1:8001/' ); } (4) 现在你的应用程序和浏览器之间有了异步持久链接。( 5)您的应用程序登录到您的 ext 套接字等。
    猜你喜欢
    • 2021-04-08
    • 2013-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-08
    • 2023-03-30
    • 2022-01-10
    • 2017-01-30
    相关资源
    最近更新 更多