首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

vinkla/Pusher不适用于laravel 5.4

vinkla/Pusher是一个用于Laravel框架的Pusher服务提供商的包。然而,它不适用于Laravel 5.4版本。Laravel 5.4版本引入了Broadcasting功能,它提供了更好的实时通信解决方案。

对于Laravel 5.4版本及以上,推荐使用Laravel自带的Broadcasting功能来实现实时通信。Broadcasting基于事件系统,可以通过广播事件来实现实时消息传递。它支持多种驱动程序,包括Pusher、Redis和Socket.io等。

如果你想在Laravel 5.4中使用实时通信功能,可以按照以下步骤进行设置:

  1. 首先,确保你已经安装了Laravel 5.4版本及以上,并且配置好了数据库和其他必要的环境。
  2. 在config/app.php文件中,取消注释或添加以下提供者和别名:
代码语言:txt
复制
'providers' => [
    // ...
    Illuminate\Broadcasting\BroadcastServiceProvider::class,
],

'aliases' => [
    // ...
    'Broadcast' => Illuminate\Support\Facades\Broadcast::class,
],
  1. 在config/broadcasting.php文件中,配置广播驱动程序和其他相关选项。例如,如果你想使用Pusher作为广播驱动程序,可以进行如下配置:
代码语言:txt
复制
'default' => env('BROADCAST_DRIVER', 'pusher'),

'connections' => [
    // ...
    'pusher' => [
        'driver' => 'pusher',
        'key' => env('PUSHER_APP_KEY'),
        'secret' => env('PUSHER_APP_SECRET'),
        'app_id' => env('PUSHER_APP_ID'),
        'options' => [
            'cluster' => env('PUSHER_APP_CLUSTER'),
            'encrypted' => true,
        ],
    ],
],
  1. 在.env文件中,配置Pusher相关的环境变量:
代码语言:txt
复制
BROADCAST_DRIVER=pusher
PUSHER_APP_ID=your-app-id
PUSHER_APP_KEY=your-app-key
PUSHER_APP_SECRET=your-app-secret
PUSHER_APP_CLUSTER=your-app-cluster
  1. 创建一个事件类,用于定义广播事件的内容。例如,可以创建一个名为ExampleEvent的事件类:
代码语言:txt
复制
namespace App\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Queue\SerializesModels;

class ExampleEvent implements ShouldBroadcast
{
    use SerializesModels;

    public $message;

    public function __construct($message)
    {
        $this->message = $message;
    }

    public function broadcastOn()
    {
        return new Channel('example-channel');
    }
}
  1. 在需要触发广播事件的地方,使用event函数来触发事件。例如,在控制器中触发ExampleEvent事件:
代码语言:txt
复制
namespace App\Http\Controllers;

use App\Events\ExampleEvent;

class ExampleController extends Controller
{
    public function exampleMethod()
    {
        event(new ExampleEvent('Hello, world!'));
    }
}
  1. 在前端页面中,使用Laravel Echo或其他适当的库来监听广播事件并处理接收到的消息。这里不提供具体的前端代码,因为涉及到的技术和库可能各不相同。

通过以上步骤,你可以在Laravel 5.4及以上版本中实现实时通信功能,而不需要使用vinkla/Pusher包。这样可以更好地利用Laravel自带的Broadcasting功能,并且不依赖于第三方包。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

基于 Pusher 驱动的 Laravel 事件广播(上)

=YOUR_APP_SECRET 然后,把Pusher集成到Laravel的后端,有两种方式:使用Laravel Pusher Bridge;使用Laravel Event Broadcaster。...2.4 Laravel Pusher Bridge 在PHP包资源库中查找pusher,安装: composer require vinkla/pusher 安装完后注册下服务,service provider...主要就是把刚刚下载的service(包)在Laravel容器中注册下,每一个service(包)都有对应的一个service privider: Vinkla\Pusher\PusherServiceProvider...'Pusher' => Vinkla\Pusher\Facades\Pusher::class 配置并安装好这个包后就来检测下能不能使用: get('/bridge', function() {...总结:上部分包括Pusher服务账号注册、Laravel实时APP安装、Pusher服务端的集成和调试和Pusher客户端的集成和调试。

2.9K31

Laravel学习教程之广播模块详解

前言 本文主要给大家介绍了关于Laravel广播模块的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 注意:本文是基于Laravel 5.4版本的路由模块代码进行分析书写; 简介...驱动 Pusher是一个第三方服务,服务器发送广播时,会向Pusher发送请求,再通过Pusher与浏览器或移动端保持的长连接进行数据交互; 配置 通过Pusher官网注册用户信息,获取属于自已的一套密钥信息...> // 打开 Pusher 的调试日志 Pusher.logToConsole = true; // 定义 Pusher 变量 var pusher = new Pusher('PUSHER_APP_KEY...user, true))->toOthers(); Redis驱动 配置 .env文件修改或添加一行:BROADCAST_DRIVER=redis; 广播 原理是同样在后端部署一个Socket.IO服务器,Laravel...附录 同类型的文章可参考以下,加深了解: Laravel学院 事件广播基础知识 Pusher 的认识

1.5K50

Laravel 广播系统工作原理

今天,让我们深入研究下 Laravel 的广播系统。广播系统的目的是用于实现当服务端完成某种特定功能后向客户端推送消息的功能。本文我们将学习如何使用第三方 Pusher 工具向客户端推送消息的功能。...| | 该配置选项用于配置项目需要提供广播服务时的默认驱动器。配置连接器可以使任意 | 在 "connections" 节点配置的驱动名称。...之后需要使用 Composer 包管理工具安装 Pusher 的 PHP 版本 SDK,这样才能在 Laravel 项目中使用 Pusher 发送广播信息。...创建 message 迁移文件 首先,我们需要创建一个 Message 模型用于存储用户发送的消息,执行如下命令创建一个迁移文件: php make:model Message --migration...本文使用的是 Pusher 服务,所以 Laravel 将事件推送到 Pusher 服务器。

9.1K20

基于 Redis 实现 Laravel 广播功能(中):引入 Laravel Echo 接收广播消息

接下来我们需要借助 Laravel Echo Server 搭建起 Websocket 服务器,这里面除了封装 Socket.io 服务端之外,还包含了订阅服务端广播频道的 Redis 客户端,用于接收服务端...docker-compose up -d laravel-echo-server 启动即可,如果使用的是 Laravel Sail 作为本地开发环境,可以参考 Laradock 提供的 laravel-echo-server.../docker/laravel-echo-server/laravel-echo-server.json:/app/laravel-echo-server.json:ro ports:...Echo Server 后,接下来,我们来安装配置 Laravel 官方提供的广播客户端前端库 Laravel Echo,它既支持 Pusher,也支持 Socket.io,这里我们肯定需要通过 Socket.io...然后在 resources/js/bootstrap.js 中取消 Laravel Echo 相关代码前面的注释,并将 Pusher 客户端实现调整为 Socket.io 客户端: import Echo

3.7K10

一个基于Laravel的全功能单页应用样板

Laravel Enso是一个基于Laravel的全功能单页应用样板,为复杂应用提供健壮的样板工具,具有优越的性能。...Laravel Enso是基于Laravel、 Vue、 Bulma开发, 由几十个模块组成,易于扩展和自定义。...特征 包含强大的CLI工具,可以方便的创建新的复杂结构,生成所需文件 包含功能强大且可定制的数据表格组件 漂亮的表单组件 Vue选择器组件 支持用户组、角色和权限管理 日志管理 用户操作日志 用于调试的用户功能...基于introjs的用户教程 本地化支持 基于Chart.js的服务端渲染的图标组件 支持标记用户的评论组件 能够追踪模型的创建、更新和删除 支持文件上传和管理 适用于所有用户的头像功能 支持模型的版本控制...基于Flatpickr的日期和时间选择器 Server-side type-ahead 支持用户端的选项设置 队列 推送通知(基于pusher.com) 电子邮件通知 面包屑导航 自定义时间格式 独立的前端状态支持

15920

基于 Redis 发布订阅 + Socket.io 实现事件消息广播功能

显然,通过广播功能可以轻松构建类似在线聊天室、股票行情之类的实时消息系统,往小一点说,也可以用于实时给用户发送提醒消息,无需用户刷新页面发送请求。...Laravel 自带的广播组件 Websocket 服务端默认是基于 Pusher 提供的,这是一个国外的付费第三方实时消息服务,不适合国内使用,并且学院君这里重点介绍的是基于 Redis 的服务端实现...首先我们创建一个 Artisan 命令类: php artisan make:command RedisPublish 用于通过 Redis 的 PUBLISH 指令在 test-channel 频道发布一条用户注册事件消息...的发布/订阅功能正是用于这里,可以看到这是一个异构系统,Redis 发布位于 Laravel 应用,Redis 订阅位于 JavaScript 应用,以及 http 依赖用于启动 HTTP 服务器(Websocket...运行 npm run dev 重新编译前端代码,在 resources/views 目录下新建一个 websocket.blade.php 用于测试的视图模板文件: <!

4.5K20

如何提前体验 Laravel 5.5

Laravel 5.4 了,接下来升级到 Laravel 5.5 自然是理所当然的事情,但是对于追求稳定和长期技术支持的人来说,即使依然在使用 Laravel 5.1, 面对这个新的长期支持版,吸引力甚至比其它更新版本的用户更大...,因为自 5.1 以后,Laravel 在 5.2, 5.3, 5.4版本中,已经提供了一系列非常有吸引力的新特性。...鉴于Laravel 5.5在正式发布之前还会继续进行bug修复和引入新特性,加上很多第三方的包目前还没有提供兼容的版本,因此不建议直接将 Laravel 5.5 应用于生产环境,本文只考虑新建项目的情况...创建一个新的Laravel项目,有多种方法: 1. laravel/installer 用 laravel/installer 可以快速创建新的laravel项目,是官方推荐的方式之一。...laravel/laravel my-project 即可创建基于当前最新发布版本的 laravel 项目。

2.6K50

Laravel5.4 队列简单配置与使用

引用一点官方翻译的话: Laravel 队列为不同的后台队列服务提供统一的 API , 例如 Beanstalk,Amazon SQS, Redis,甚至其他基于关系型数据库的队列。...其中还包含了一个null队列驱动用于那些放弃队列的任务。 Laravel5.4版本中直接提供了全局函数 dispatch(),你可以再任意地方调用。并且无需加载任何对象或者实例化类。...这个函数主要的用途就是将你的队列需求加入到指定的容器中(专业点的叫生产者,其实你大可理解为你在商城购物完排队结账的时候) 设置驱动 Laravel神奇数据库迁移我就不多说了。我相信你知道。...php artisan queue:work 基本就下面这个样 到此Laravel5.4 队列简单配置与使用就结束了。...更多专业吊炸天的教程请参考China Laravel http://d.laravel-china.org/docs/5.4/queues 最后修改:1年前 2017-08-10 © 著作权归作者所有

1.5K10

Laravel框架关键技术解析

@section(‘区块名’):用于定义一个区块,它可以有不同的结尾标识,@show用于显示,@stop和@endsection用于结束一个区块,@overwrite用于重写前面的区块。...需要将$defer属性设置为true,同时定义一个provides方法,用于返回服务提供者绑定服务的名称 https://github.com/zhangyue0503/laravel5.4cn 九、请求与响应的操作...对于多个表而且表间存在不同的关系时,如果使用不好会严重影响程序的性能 4.创建命令:php artisan make:model 名称 https://github.com/zhangyue0503/laravel5.4cn...https://github.com/zhangyue0503/laravel5.4cn 十三、消息队列 1.消息队列可以解决大并发和多种语言通信接口等问题 2.实时socket连接和推送问题node.js...(RegisterRequest $request){}进入方法即通过验证,还包含authorize()方法可以实现用户权限的精确控制 https://github.com/zhangyue0503/laravel5.4cn

11.9K20

Laravel 5 系列入门教程(一)【最适合中国人的 Laravel 教程】

---- Laravel 5 中文文档: 1. http://laravel-china.org/docs/5.0 2. http://www.golaravel.com/laravel/docs/5.0...软件版本:PHP 5.4+,MySQL 5.1+ 本文不推荐完全不懂 PHP 与 MVC 编程的人学习。本文不是 “一步一步跟我做” 教程。...本文需要你付出一定的心智去解决一些或大或小的隐藏任务,以达到真正理解 Laravel 运行逻辑的目的。 1. 安装 许多人被拦在了学习Laravel的第一步,安装。...不想配置镜像的同学,可以使用 Laravel 界非常著名的 安正超 搞的安装神器:https://github.com/overtrue/latest-laravel 3....如果你从其他框架转过来,可能对这里一笔带过的 Model 部分很不适应,没办法,是因为 Eloquent 实在太强大了啦,真的没什么好做的,继承一下 Eloquent 类就能实现很多很多功能了。

3.4K20

Laravel 5.4 及 5.5 中的全新字符串辅助方法

Laravel 5.5 已经确定预计在 2017年 Laravel 欧洲大会上正式发布。这次重大升级,也带来了一些新的字符串相关的辅助方法。...以下介绍一些最近比较火的字符串辅助方法,他们最近已经得到了许多 Laravel 开发者的喜爱。...str_start() 方法 str_start() 辅助方法是由 Caleb Porzio 在 Laravel 5.4 分支中贡献的。这个方法用于确定字符串的开头有且仅有一个特定的字符。...举个栗子,你要获取 Email 地址中的用户名部分: echo str_before('kairee@ofcss.tld', '@'); // 输出:kairee 这个方法会随 Laravel 5.5...了解全部辅助方法 Laravel 提供了大量有关字符串、数组、URL的辅助方法。建议开发者可以经常性地查看一下 官方文档中的辅助方法部分。相信你经常能够有所收获。

1K70

基于 Redis 实现 Laravel 广播功能(上):广播事件分发和底层源码探究

这里使用的技术栈是基于 Redis 驱动的 Laravel 广播组件 + 封装了 Socket.io 服务端的 Laravel Echo Server + 封装了 Socket.io 客户端的 Laravel...Laravel 后端配置 要使用 Laravel 提供的广播组件,需要在 config/app.php 中取消 BroadcastServiceProvider 前面的注释: 'providers' =...和缓存、队列一样,广播也支持多种驱动,比如 Pusher、Redis,我们可以在 .env 通过设置 BROADCAST_DRIVER 来配置广播驱动,这里将其配置为 Redis: BROADCAST_DRIVER...接口表示这是个广播事件,然后通过 broadcastOn 方法定义了广播频道,你可以基于 InteractsWithSockets 提供的方法进行一些 Websocket 设置,还可以定义一些其他的方法和属性用于设置该事件的广播和推送到消息队列的行为...payload[0]); } payload 是通过数组包裹的传入 dispatch 方法的事件实例数据,因此 payload[0] 也就是事件实例本身了,这里的 shouldBroadcast 方法用于判断当前事件是否需要广播

3.4K20

Laravel学习教程之View模块详解

前言 本文主要是给大家介绍了关于Laravel中View模块的相关资料,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。...本文是基于Laravel 5.4版本的路由模块代码进行分析书写; 文件结构 View模块的文件格局及功能如下图所示: 视图化呈现时的大概流程: 1、通过view()方法的调用,开始视图的呈现; 2、首先...输出未转义字符,用于输出原生带html标签的值; {{ }}正常输出,支持三目运算符替换; {{{ }}}输出转义字符,支持三目运算符替换; 三目运算符替换是指:{{ $a ?: "默认值" }...} (或者 {{$a or "默认值"}}) 换成 {{ isset($a) ? $a : "默认值"}} 参考文章 Laravel 模板引擎(Blade)原理简析 Laravel 5.4 文档

1.7K20
领券