[英]Laravel 5: Socket.io client authentication using Laravel session data
[英]Is it possible to integrate socket.io client in Laravel?
您可以使用下一个解决方案。 我在PHP + socket.io连接中使用它。 这不是完全集成,但是您可能会从PHP代码向连接的客户端发出事件。
<script>
var socket = io("' . $your_socket_io_server . '");
socket.emit("register", { userid: "' . $userid . '" });
</script>
<script>
//Additional room, not inly user id.
socket.emit("register", { userid: "room_26322bab71bc91b19204acfeee6192" })
socket.on('server_event', function (data) {
console.log('server event');
console.log(data);
})
socket.on('alert', function (data) {
alert(data);
})
</script>
例如,我的代码: https : //github.com/ramainen/doit-socket/blob/master/server.js
一间房间-一位客户。 断开连接后,删除房间,但是socket.io中存在一个错误,并且房间没有删除,因此我在代码中手动删除了。
另外,最好将curl与PHP数据结合使用。 因此,PHP中的所有业务逻辑都无需在node.js部分中使用数据存储或计算,也可以将一台node.js服务器用于多个项目。 您可以使用Laravel登录名,会话,无论您想要什么。 另外,您可以在PHP部分中使用userid_to_user多对多存储来为多个客户端提供服务,并以帐户身份登录。
您可以使用adress cloud.doit-cms.ru进行测试,这是Azure node.js应用程序,连接到github代码https://github.com/ramainen/doit-socket
我的用于发布的PHP代码(非常简单): https : //github.com/ramainen/doit-cms/blob/master/cms/mod_socketio/socketio.class.php 。 当然,外部应用程序(如果不是PHP)必须使用此简单API。
另外,您可以使用第三方解决方案,如下所示:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.