使用PHP和Javascript的Pusher

使用PHP和Javascript的Pusher,javascript,php,pusher,Javascript,Php,Pusher,我想用php和javascript实现pusher 我已经包括了用于php的pusher库和composer 我的php代码是 <?php require_once "vendor/autoload.php"; $app_id = "XX"; $app_key = "XX"; $app_secret = "XX"; $cluster = "ap1"; $pusher = new Pusher( $app_key, $app_secret, $app_id, array( 'encryp

我想用php和javascript实现pusher

我已经包括了用于php的pusher库和composer

我的php代码是

<?php
require_once "vendor/autoload.php";

$app_id = "XX";
$app_key = "XX";
$app_secret = "XX";
$cluster = "ap1";

$pusher = new Pusher( $app_key, $app_secret, $app_id, array( 'encrypted' => true ) );

$pusher->trigger( 'XX-channel', 'test', 'hello world' );

发现问题


我忘了添加集群。

你是在PHP触发之前加载JS的吗?还有。。您不应该设置websocket服务器(可能是nodeJS)来侦听消息吗?你看到什么了吗?我刚刚尝试刷新php页面以接收日志。你应该能够使用pusher应用程序仪表板中的调试控制台确定问题的原因是php还是javascript代码。如果使用事件创建者将
test
事件发送到
XX频道
时能够看到
控制台的日志
,那么问题就出在PHP代码中,您应该尝试帮助查找。@leesio谢谢。问题在于php
<head>
    <title>Pusher</title>
    <script src="https://js.pusher.com/4.1/pusher.min.js"></script>

</head>
<body>

<script type="text/javascript">
        const socket = new Pusher("XXX", {
            cluster: 'ap1'
        });
        const channel = socket.subscribe('XX-channel');

        channel.bind('test', function (data) {
          console.log(data);
        });
    </script>
</body>
$pusher = new Pusher( $app_key, $app_secret, $app_id, array( 'cluster'=> $cluster) );

$pusher->trigger( 'XX-channel', 'test', 'hello world' );