gpt4 book ai didi

websocket - 连接来自 Angular 项目的 Laravel 回声

转载 作者:行者123 更新时间:2023-12-03 06:42:41 26 4
gpt4 key购买 nike

我有一个在本地运行 Redis 的 Laravel-echo-server。
我创建了一个测试 API 端点,它发出可广播的事件。

http://localhost:8000/api/web-socket-test我在 echo server CLI 中看到了响应。 enter image description here

我设置了 laravel-echo 身份验证 key ,我可以从服务器 API 获取统计信息http://localhost:6001/apps/APP_ID/status?auth_key=b73a61d0 .

enter image description here

问题在于通过 ws: 协议(protocol)从 Angular 连接到 echo-server。
我的连接代码是

import {webSocket, WebSocketSubject} from 'rxjs/webSocket';
export class MyComponent implements OnInit, OnDestroy {

myWebSocket: WebSocketSubject<any> = webSocket('ws://127.0.0.1:6001');

ngOnInit() {
this.myWebSocket.subscribe(
msg => console.log('message received: ' + msg),
err => console.log(err),
() => console.log('complete')
);
}


最后我得到了一个错误: 与“ws://127.0.0.1:6001/”的 WebSocket 连接失败:连接在收到握手响应之前关闭 .

enter image description here

如何建立ws连接?

最佳答案

我相信您想尝试使用 socket.io 客户端库而不是使用 rxjs 原始 websocket 进行连接。

尽管从 laravel echo server 文档中并没有立即明确,但项目标题声明它是“用于 Laravel Echo 的 Socket.io 服务器”。所以我假设您应该使用 socket.io 客户端库进行连接。

关于websocket - 连接来自 Angular 项目的 Laravel 回声,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60189796/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com