Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 多数据库公司的Pusher_Javascript_Php_Pusher - Fatal编程技术网

Javascript 多数据库公司的Pusher

Javascript 多数据库公司的Pusher,javascript,php,pusher,Javascript,Php,Pusher,我正试图找出在我的应用程序中使用Pusher的最佳方法 我的应用程序包含在一个普通的网站上,用户可以在该网站上登录 每个用户都连接到一个公司 每个公司都有自己的数据库 因此,我需要我的应用程序允许向只属于注册公司的人发送常规消息和通知(如弹出窗口) 疑问/问题: 如果我创建一个名为通知的频道并向其发送事件,所有用户(无论是哪家公司)都将收到该频道 如果我设置了某种与该公司关联的令牌,则该令牌将不起作用,因为某些通知/消息只应发送给限制用户 在我以前的项目中,我将一个令牌关联到该公司,因为用户之间

我正试图找出在我的应用程序中使用Pusher的最佳方法

  • 我的应用程序包含在一个普通的网站上,用户可以在该网站上登录
  • 每个用户都连接到一个公司
  • 每个公司都有自己的数据库
  • 因此,我需要我的应用程序允许向只属于注册公司的人发送常规消息和通知(如弹出窗口)

    疑问/问题:

  • 如果我创建一个名为
    通知
    的频道并向其发送事件,所有用户(无论是哪家公司)都将收到该频道
  • 如果我设置了某种与该公司关联的令牌,则该令牌将不起作用,因为某些通知/消息只应发送给限制用户
  • 在我以前的项目中,我将一个令牌关联到该公司,因为用户之间没有任何活动,只是“炫耀”PHP在每个公司(在一个循环中)所做的事情,比如:

    PHP:

    $this->pusher->trigger($company_pusher_token, 'feedback', $data);
    
    var token   = $('#company_pusher_token').val();
    var channel = pusher.subscribe(token);
    
    channel.bind('feedback', function(data) 
    {
       alert('working..');
    });
    
    JS:

    $this->pusher->trigger($company_pusher_token, 'feedback', $data);
    
    var token   = $('#company_pusher_token').val();
    var channel = pusher.subscribe(token);
    
    channel.bind('feedback', function(data) 
    {
       alert('working..');
    });
    

    那么,我应该如何着手完成我所寻找的目标呢?

    看来你的方向是正确的

    频道名称始终以公司唯一前缀开头。如果只应通知该公司的一部分用户,则将前缀与组ID组合

    频道:

    • 通知
      ”:发送给所有公司、所有客户
    • -通知”
      ”:发送给给定公司的所有客户
    • --通知”
      ”:从给定公司内的组发送给所有客户

    顺便说一句,如果你想确保你的客户不能绑定到另一家公司的频道,请确保公司令牌是不可猜测的,或者使用“private-”前缀让你控制频道订阅的授权。

    看起来你走的方向是对的

    频道名称始终以公司唯一前缀开头。如果只应通知该公司的一部分用户,则将前缀与组ID组合

    频道:

    • 通知
      ”:发送给所有公司、所有客户
    • -通知”
      ”:发送给给定公司的所有客户
    • --通知”
      ”:从给定公司内的组发送给所有客户
    顺便说一下,如果您想确保您的客户不能绑定到另一家公司的频道,请确保公司令牌是不可猜测的,或者使用“private-”前缀让您控制频道订阅的授权