我正在使用Pusher Channels
并像他们的教程中那样传递消息:
https://pusher.com/docs/channels/getting_started/javascript
客户:
let pusher = new Pusher('APP_KEY', {
cluster: 'APP_CLUSTER'
});
let channel = pusher.subscribe('my-channel');
channel.bind('my-event', function(data) {
alert('An event was triggered with message: ' + data.message);
});
服务器:
// First, run 'npm install pusher'
var Pusher = require('pusher');
var pusher = new Pusher({
appId: 'APP_ID',
key: 'APP_KEY',
secret: 'APP_SECRET',
cluster: 'APP_CLUSTER'
});
pusher.trigger('my-channel', 'my-event', {"message": "hello world"});
是否可以通过IIS上的端口443保护连接的安全?
答案 0 :(得分:1)
要确保使用HTTPS将推送器通道消息从服务器发送到通道,然后使用WSS广播到客户端,则需要执行以下操作:
对于在服务器上运行的nodejs库,您需要设置useTLS选项:true
var pusher = new Pusher({
appId: 'APP_ID',
key: 'APP_KEY',
secret: 'APP_SECRET',
cluster: 'APP_CLUSTER',
useTLS: true
});
https://github.com/pusher/pusher-http-node#configuration
对于在客户端上运行的pusher-js库,您需要设置选项forceTLS:true
let pusher = new Pusher('APP_KEY', {
cluster: 'APP_CLUSTER',
forceTLS: true
});
https://github.com/pusher/pusher-js#configuration
最后,要确保仅通过安全连接接受客户端连接,您需要登录您的Channels Dashboard帐户,找到需要保护的应用程序,然后单击“应用程序设置”选项卡。最后,您需要勾选“强制TLS”框,然后单击“更新”以应用设置。选中此框,将拒绝通过端口80的客户端连接,并强制客户端使用安全连接重新连接: