带有实时和WebSockets的Angular2 + Laravel

虚幻

我构建了一个应用程序,并计划与Angular 2和laravel进行实时战斗。例如,您按下“攻击”按钮,对手就会实时看到自己的生命正在下降。

我的应用程序构建有:

前端: Angular 2

后端: PHP Laravel 5.2

现在,我正在搜索和学习我的实时战斗组件,并且看到了不同的指南和教程:

  1. https://www.codetutorial.io/laravel-5-and-socket-io-tutorial/
  2. http://4dev.tech/2016/02/creating-a-live-auction-app-with-angular-2-node-js-and-socket-io/

一个教程是关于如何使用Laravel 5和socket io的

第二一个是如何利用角2 NODS JS和插座IO

我说的是实时,是指两个用户在屏幕上看到的都是同一件事。

我的后端和前端完全分开了,我的应用程序中的任何地方都没有设置NodeJS。

两个用户都需要在我的应用中查看战斗中发生的动作,并且需要通过我的laravel API并通过Angular 2战斗组件进行显示

我的问题是-

使用Angular2和Laravel 5.2获得我想要达到的预期结果的实时应用程序(似乎是Websocket)的最佳方法是什么?

怎么样?

数码相机

在这种情况下,Laravel只是模板和提供客户端文件,并充当客户端和socket.io服务器之间的接口。它实际上不充当socket.io服务器,我不相信它可以。

因此,是的,您仍然需要某些(节点)来托管socket.io服务器,以通过PHP或其他方式与客户端进行交互。就个人而言,我将完全跳过Laravel / PHP,而只将node与koa / express /随便使用什么来模板化您的客户端(html / js / css / etc)文件。感觉像对我来说是不必要的抽象。

下面的代码socket.blade.php已经与实际socket.io服务器建立了连接,因此我不明白为什么通过PHP / Laravel进行HTTP POST的额外开销是一个好主意。也许是安全性,但是您也可以使用实际的socket.io服务器来处理。

var socket = io.connect('http://localhost:8890');
socket.on('message', function (data) {
    $( "#messages" ).append( "<p>"+data+"</p>" );
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章