Beyondcode\laravel-websockets 它正在重定向到 wss 而不是 localhost 上的 ws
Posted
技术标签:
【中文标题】Beyondcode\\laravel-websockets 它正在重定向到 wss 而不是 localhost 上的 ws【英文标题】:beyondcode\laravel-websockets it is redirecting to wss instead of ws on localhostBeyondcode\laravel-websockets 它正在重定向到 wss 而不是 localhost 上的 ws 【发布时间】:2020-05-18 10:32:14 【问题描述】:我正在使用 laravel 5.7 版和 Beyondcode\laravel-websockets 包 v1.3 我现在面临的问题是当我在 localhost 上运行它时出现此错误
WebSocket connection to 'wss://localhost/app/somekey?protocol=7&client=js&version=6.0.2&flash=false' failed: Error in connection establishment: net::ERR_CERT_AUTHORITY_INVALID
我在 bootsrap.js 中将 encrypted 更改为 false,但它仍然连接到 wss 而不是 ws
bootstrap.js
import Echo from 'laravel-echo'
window.Pusher = require('pusher-js');
window.Echo = new Echo(
broadcaster: 'pusher',
key: process.env.MIX_PUSHER_APP_KEY,
cluster: process.env.MIX_PUSHER_APP_CLUSTER,
encrypted: false,
wsHost: window.location.hostname,
wsPort: 6001,
disableStats: true
);
broadcasting.php 配置
'connections' => [
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'secret' => env('PUSHER_APP_SECRET'),
'app_id' => env('PUSHER_APP_ID'),
'options' => [
'cluster' => env('PUSHER_APP_CLUSTER'),
'encrypted' => false,
'host' => '127.0.0.1',
'port' => 6001,
'scheme' => 'http'
],
],
【问题讨论】:
【参考方案1】:将此行添加到配置中,不要忘记编译
enabledTransports: ['ws'],
如果这不起作用,请尝试将 pusher.js 降级到 4.3
【讨论】:
【参考方案2】:如果其他人看到这一点,一旦我停止通过https://www.mypage.com 并使用http://www.mypage.com,我已经解决了它
只需将浏览器上的协议从 https 更改为 http
【讨论】:
以上是关于Beyondcode\laravel-websockets 它正在重定向到 wss 而不是 localhost 上的 ws的主要内容,如果未能解决你的问题,请参考以下文章