问题标签 [ngx-socket-io]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - Socket.io - 客户端未收到连接时发出的事件
我在 Angular 应用程序的客户端上使用ngx-socket-io。我已按照“如何使用”部分中的设置进行操作。
当一个客户端使用此代码连接时,我正在尝试向所有连接的客户端发出事件:
但是,客户端在执行以下操作时永远不会收到此事件:
但是,如果我将服务器代码更改为:
和客户端代码:
然后它按预期工作。
为什么我不能只发出一个事件并在客户端上接收它而不像第二个示例那样首先从客户端发出一个事件?
javascript - 我如何使用 socket.io 向特定用户发送数据
我正在使用 ionic 构建移动应用程序,我正在使用 socket.io,我希望能够向具有 id 的特定用户发送消息,而不是向所有人广播消息,聊天应用程序不是聊天室风格的那种的应用程序,但像 watsapp 这样的一对一聊天应用程序,我在网上搜索但我看到的内容不起作用,这是服务器端的代码
我正在聊天的用户的 id 是data.id
,我尝试使用io.to(data.id).emit('all_msg', results)
但用户没有收到任何消息,请问我在做什么这是不对的
这是客户端代码
我ngx-socket.io
在我的离子添加中使用
node.js - Angular 和 Node.js 套接字 IO 问题
我正在尝试将消息从 Angular 前端发送到 Node.js 服务器。我使用 socket.io 和 Node.js 作为我的服务器,并使用 ngx-socket-io 模块运行 Angular 前端。我按照示例进行操作,但出现此错误:
这是我的 game.service 文件:
这是我的 game.component 文件:
这是我的 app.module 文件:
这是我的 NodeJS 文件(app.js):
包.json:
节点正在工作,它说“正在监听 *:3000”,并且一切似乎都在 Angular 中工作
angular - 如何在 Angular 订阅块中测试代码,而不会在后续订阅块中覆盖值?
我在 Angular 应用程序中使用 ngx-socket-io,并且我有一个组件,其中包含.subscribe
内的各种块ngOnInit()
,随后将在从服务器接收到数据时运行
我的问题是,当我ngOnInit()
在测试套件中调用时,我无法测试组件变量是否设置为某个特定订阅块内的内容,因为它将在另一个订阅块内被覆盖。
例如:
零件:
测试:
(为简洁起见,省略了测试套件中的模拟)
我想测试订阅hostName
内部具体发生了什么。isHost
但是,hostName
会在onUserDisconnection
订阅内被覆盖。
一种解决方案是在订阅块内创建一个方法并单独测试该方法,但我不想测试私有方法。
最好的方法是什么?
node.js - 为什么 socket.io 返回“错误的握手方法”?
晚上好,我正在为套接字连接而苦苦挣扎。我在 nodejs-express 后端使用 socket.io,在 angular 前端使用 ngx-socket-io,但在连接时我不断收到 400 stat ({"code":2,"message":"Bad handshake method"})交替使用 200 统计宽度 sid: 0{"sid":"REeYoGC5t_JnTp4dAABp","upgrades":"websocket"],"pingInterval":25000,"pingTimeout":5000})。
[这里有chrome的net tab截图][1]
这里是服务器
这里有客户
有人可以帮我弄这个吗?[1]:https ://i.stack.imgur.com/72YSB.png
编辑我已经使用 socket.io-client 而不是 ngx-socket-io 解决了这个问题
python-3.x - ngx-socket-io 连接错误但 flask_socketio 日志显示 200 OK
任何调试技巧都会有所帮助,这只是基本实现。
我正在使用此处的确切教程来设置 ngx 套接字客户端: https ://www.npmjs.com/package/ngx-socket-io
服务器的flask-socketio https://flask-socketio.readthedocs.io/en/latest/
服务器端没有显示错误,但发出/接收的注册处理程序方法似乎是盲目的。
服务器日志:
客户端日志:
服务器代码(无打印)
为什么我无法使连接正常工作?谢谢
angular - 角度测试,socket.io “NullInjectorError:没有 WrappedSocket 的提供者”
我正在对 Angular 进行测试,但对于使用 ngx-socket-io 的套接字服务,它们失败了。它适用于开发,而不是用于测试。它没有正确创建组件。
我的 service.spec.ts
我的服务
我已经尝试添加提供程序 [WrappedSocket] 老实说,这是一个自动修复选项,但这会导致更多错误。
考虑到它是自动填充,我实际上不确定它怎么不存在。
有想法该怎么解决这个吗?我尝试了一系列提供者 [Socket] , [SocketIOModule] 但似乎没有任何效果
angular - Angular & ngx-socket-io & NestJs - 客户端应用程序未接收服务器事件发射
我安装了下一个软件包:
- 角度诉 10
- ngx-socket-io v.3.2.0
- @nestjs/platform-socket.io
- @nestjs/platform-socket.io@7.4.4, socket.io@2.3.0
问题是:
我有一个聊天组件和一个线程组件。当我在线程中回答时,应该socket.on('createThreadMessage:response')
在聊天组件上触发事件。我在当前打开的浏览器上工作,但如果线程组件关闭,我无法在另一个浏览器上的另一个客户端应用程序上接收相同的事件。
对不起我的英语,谢谢你的提前!
angular - 监听 connect(),不发出事件
抱歉这个菜鸟问题,我是 websockets 的新手。
基本上我想听网络套接字而不发送任何东西(只是连接)。我不是 100% 确定我是否正确理解了这一点,但我在https://www.websocket.org/echo.html对其进行了测试并且它有效。我只需单击连接,它就会收到我的 websocket 主机的响应。我想为我的角度应用程序做同样的事情。我可以在 devtools 中看到我正在从 websocket 接收数据,但我找不到监听/订阅的方法this.socket.connect()
。很感谢任何形式的帮助。谢谢
angular - 连接到 netty-socket.io 服务器时的角度客户端“服务器错误”
我正在尝试将我的 Angular 应用程序连接到基于 netty-socket.io 的 java 套接字服务器,但它不工作......
我总是在“connect_error”上收到此错误:
我已经尝试使用socket.io-client和ngx-socket-io。
服务器端:
客户端通过socket.io-client:
app.component.ts
ngx-socket-io客户端:
app.module.ts
app.component.ts