版本说明

composer指定版本可以查看

https://www.jianshu.com/p/ef31d9c9094b

laravel5.2

pusher版本

"pusher/pusher-php-server": "^2.2.1",

pusher laravel版本

"pusher/pusher-http-laravel": "~2.0"

安装

忽略怎么安装,

把创建pusher的配置文件读取到config下,

官方文档存在BUG,代码应该是

php artisan vendor:publish

config/app.php

引入

'providers' => [

..

Vinkla\Pusher\PusherServiceProvider::class

]

别名那里不引入,有问题,后续有机会重写一个

搞定配置

配置文件说明

'connections' => [

'main' => [

'auth_key' => env('PUSHER_KEY'),

'secret' => env('PUSHER_SECRET'),

'app_id' => env('PUSHER_APP_ID'),

'options' => [],

'host' => null,

'port' => null,

'timeout' => null,

//这里必须增加配置,表示

'options'=>[

'encrypted'=>false,//是否HTTPS

'cluster'=>'ap1',//调用哪个api

]

],

'alternative' => [

'auth_key' => 'your-auth-key',

'secret' => 'your-secret',

'app_id' => 'your-app-id',

'options' => [],

'host' => null,

'port' => null,

'timeout' => null,

],

],

测试下是否可以使用

HTML文件,拿官方的来,订阅

Pusher Test

// Enable pusher logging - don't include this in production

Pusher.logToConsole = true;

var pusher = new Pusher('0a8d7355056b24b3dcd9', {

cluster: 'ap1',

encrypted: true

});

var channel = pusher.subscribe('my-channel');

channel.bind('my-event', function(data) {

alert(data.message);

});

laravel文件,发布

随便一个控制器,方法随便你,

$pusher = App::make('pusher');//因为直接用别名,刚才说了,引入会报错,所以用了这种方法注册。

$data['message'] = 'hello world';

$pusher->trigger('my-channel', 'my-event', $data);

浏览器访问就可以在html文件那里打开显示hell world

事件广播定义

创建事件定义,加入如下,这个怎么创建,请参考https://www.jianshu.com/p/68caa3df8bf5

'App\Events\PusherEvent' => [

'App\Listeners\PusherEventListener',

]

执行生成

php artisan event:generate

envent继承ShouldBroadcast

class PusherEvent extends Event implements ShouldBroadcast

{

use SerializesModels;

public $message, $id;

/**

* Create a new event instance.

*

* @return void

*/

public function __construct($text, $id)

{

$this->message = $text;

$this->id = $id;

}

/**

* Get the channels the event should be broadcast on.

*这里是定义频道的名字

* @return array

*/

public function broadcastOn()

{

return ['channel'];

}

//事件名字,如果这里没有定义,则会直接以这个事件名字为事件名,例如:App\\Events\\PusherEvent;

public function broadcastAs(){

return ['my-event'];

}

}

控制器调用

$str=str_random();

$pusher = App::make('pusher');

event(new \App\Events\PusherEvent($str, '1'));//触发事件

html文件调用

Pusher.logToConsole = true;

var pusher = new Pusher('0a8d7355056b24b3dcd9', {

cluster: 'ap1',

encrypted: true

});

var channel = pusher.subscribe('channel');

channel.bind('App\\Events\\PusherEvent', function(data) {

alert(data.message);

});

pusher 创建新应用_laravel之pusher应用广播事件- 黑白课堂相关推荐

  1. pusher 创建新应用_3.5 使用Pusher发送事件

    "练习3-1"演示了使用Pusher接收事件是多么容易,但是发送事件又如何呢? 由于Pusher有丰富的API库,因此发送事件和接收事件一样容易.我们将使用PHP的API库.该库托 ...

  2. pusher 创建新应用_基于 Laravel + Pusher + Vue 通过事件广播构建实时聊天室应用

    基于 Laravel + Pusher + Vue 通过事件广播构建实时聊天室应用 由 学院君 创建于2年前, 最后更新于 3个月前 版本号 #3 前言:学院君之前有说过要整理出一篇事件广播手把手教程 ...

  3. pusher 创建新应用_使用 Laravel-echo-server 构建实时应用

    文章转发自专业的Laravel开发者社区,原始链接:learnku.com/laravel/t/1- 在我看来,实时通信才是 APP 应用的将来. Socket 服务通常不是那么容易实现,但是 Lar ...

  4. vue js 对象下的原型_如何使用Vue.js和Pusher创建实时原型反馈应用程序

    vue js 对象下的原型 by Neo Ighodaro 由新Ighodaro 如何使用Vue.js和Pusher创建实时原型反馈应用程序 (How to create a realtime pro ...

  5. ios pusher使用_使用.NET和Pusher构建实时评论功能

    ios pusher使用 by Ogundipe Samuel 由Ogundipe Samuel 使用.NET和Pusher构建实时评论功能 (Build a real-time commenting ...

  6. 【运维学习笔记】在 vSphere Client上创建新的虚拟机

    具体步骤如下: 1. 创建新的虚拟机 打开vSphere Client(可以是客户端也可以是网页端) 如果是网页端仅能使用火狐浏览器或者谷歌浏览器打开,输入网址:192.168.22.22,进入如下界 ...

  7. asp.net mysql 创建变_[ASP.net教程]EF Core使用CodeFirst在MySql中创建新数据库以及已有的Mysql数据库如何使用DB First生成域模型...

    [ASP.net教程]EF Core使用CodeFirst在MySql中创建新数据库以及已有的Mysql数据库如何使用DB First生成域模型 0 2018-06-30 07:00:08 官方教程: ...

  8. win7计算机创建新用户,win7系统无法创建新用户的解决方法

    很多小伙伴都遇到过win7系统无法创建新用户的困惑吧,一些朋友看过网上零散的win7系统无法创建新用户的处理方法,并没有完完全全明白win7系统无法创建新用户是如何解决的,今天小编准备了简单的解决办法 ...

  9. git 从远程主服务器当中创建新分支

    现有版本; h20, h28,h26,i8 h28,h26,i8是从H20下面创建的. 需求: 从H28下面创建新分支继续开发. 思路: 所有代码均是放置到H20上仓库当中,首先下载H20完整仓库,也 ...

最新文章

  1. 借助Redis锁,完美解决高并发秒杀问题
  2. LINUX TOMCAT
  3. java 矩阵转置算法
  4. MySQL SQL优化
  5. 不用python编程,制作词云图
  6. redis伪集群脚本
  7. c语言作业题五六章答案,C语言程序设计五六章习题和课堂测试答案.doc
  8. 推荐一款免费国产远程办公神器ToDesk,TeamViewer完美替代品
  9. Qt工作笔记-moc的认识
  10. 本地wamp的Internal Server Error错误解决方法
  11. micropython教程nucleo-f767zi开发板_教你做CMSIS-DAP仿真器(基于Nucleo-F767ZI)
  12. Python下的云计算(OpenStack技术书籍)
  13. 利用纯真ip库搭建ip查询服务
  14. c#中excel文件怎么转换为dbf文件
  15. word 生成pdf_为什么Microsoft Word生成的PDF文件这么大?
  16. 南阳oj 题目10 skiing
  17. 利用Matlab筛选给定条件的数据
  18. QQ号被盗有什么方法能找回
  19. c语言中 x20是什么意思,vivo X20的这些功能,我想给满分。
  20. 任建新照常去办公室领取工资

热门文章

  1. 【愚公系列】2023年06月 网络安全(交通银行杯)-文件类型分析和社工
  2. Machine Learning for Malware Detection
  3. 怎么获取浏览器地址栏的URL?怎么加密?
  4. 1394接口测试工装研究
  5. ios开发教程入门到精通
  6. FontAwesome图标字体库和CSS框架
  7. Bootstrap5 导航
  8. 计算机网络的数据处理模式,协同计算机数据处理方法的研究.pdf
  9. 第二章 模态命题:必然、可能
  10. SpringBoot 配置 HTTPS 安全证书的两种方案