pusher.js 锁定客户端密钥权限

pusher.js locking down client key permissions

由于我们使用 pusher.js sdk 通过 Web 应用程序分发客户端密钥,因此有没有办法让客户端对频道只有只读权限?

应用程序密钥本身并不能确定客户端的权限。它仅标识客户端连接到哪个应用程序。

默认情况下所有订阅都是只读的。 Pusher 提供三种渠道类型:

  1. Public
  2. Private - with a private- name prefix that also requires subscription authentication
  3. Presence - 带有 presence- 前缀,还需要订阅身份验证和附加功能以添加显示哪些用户订阅了该频道的功能

A 以上,为了订阅私人或在线频道,您的服务器需要对订阅请求进行身份验证。

如果您确实希望客户端能够触发通道上的事件,您需要:

  1. Enable client events for an application
  2. 订阅私人频道或在线频道并对其进行身份验证:channel = pusher.subscribe('private-channel')
  3. 一旦订阅(使用 pusher:subscription_succeeded 回调检查)调用 channel.trigger('client-event', eventData) 确保在事件名称前加上 client-