我遇到了为Framework Laravel制作的包的问题。 我想和我的项目聊聊,让人们互相交流。
问题是当我尝试在推送器上访问我的应用程序时,我收到以下2个错误代码:
WebSocket connection to 'ws://ws.pusherapp.com/app/my_app_key?protocol=7&client=js&version=2.2.4&flash=false' failed: WebSocket is closed before the connection is established.
pusher.js:12 Pusher : Error : {"type":"WebSocketError","error":{"type":"PusherError","data":{"code":4001,"message":"Could not find app by key my_app_key. Perhaps you're connecting to the wrong cluster."}}}
此包名为Confer(https://github.com/dazzz1er/confer)。
我的所有文件都是正确的,但它不起作用! 我在laravel 5.1
在config / services.php
中'pusher' => [
'public' => 'my_app_key',
'secret' => 'my_secret_key',
'app_id' => 'my_app_id'
]
我的刀片模板
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title> My project - @yield('title') </title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="./css/style.css" media="screen" title="no title" charset="utf-8">
<link rel="stylesheet" type="text/css" href="../css/sweetalert.css">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
<link href="/vendor/confer/css/confer.css" rel="stylesheet">
<script src="./js/jquery-1.12.0.min.js" charset="utf-8"></script>
<script src="./js/bootstrap.min.js" charset="utf-8"></script>
<script src="./js/jcarousel.js"></script>
<script src="./js/jcarousel-basic.js" charset="utf-8"></script>
<script src="../../js/sweetalert.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>
<body class="homepage">
@include('confer::confer')
@include('sweet::alert')
@include('layouts.includes.nav')
@include('layouts.includes.header')
@yield('content')
@include('layouts.includes.footer')
<script src="./js/pusher.js"></script>
<script src="./js/moment.js"></script>
@include('confer::js')
</body>
</html>
感谢您的帮助! :)
编辑:我收到回复,这是版本之间的差异! 任何人都可以帮我把Laravel 5中的Confer转换成Laravel 5.1吗?谢谢 ! :)以下是laravel 5中的完整演示! https://github.com/dazzz1er/confer-demo
答案 0 :(得分:1)
如果您不是来自美国,我认为您需要将群集更改为“eu” https://pusher.com/docs/clusters#/lang=php
答案 1 :(得分:0)
此处的错误消息Could not find app by key my_app_key
表示您尚未使用实际的Pusher凭据替换这些凭据,您可以在Pusher信息中心找到这些凭据。
如果Pusher库未获得有效凭据,则会抛出该错误。如果您已正确更新config/services.php
,则可能需要重新启动服务器才能使更改生效。
您需要更改config/services.php
以使用您可以在“应用密钥”部分下的Pusher信息中心找到的密钥。例如:
答案 2 :(得分:0)
我不会假装复制别人的答案,但我只想分享对我有用的东西。在env文件中,我没有正确配置 BROADCAST_DRIVER = pusher 。然后,当我在他们的网站上创建推送应用程序时,检查群集与我提供的群集相同。您还可以在“应用程序密钥”选项卡下找到分配给您的群集名称。然后,我重新启动Chrome浏览器,最后通过运行valet restart我重新启动服务器。您可以使用不同的命令重新启动服务器,具体取决于您的开发环境。