向特定用户发送推送通知 - Laravel

2024-01-13

在我的 laravel 应用程序中,我想使用 Pusher 向特定用户发送通知。

我将此代码放入我的方法中:

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

$pusher->trigger( 'notification-channel',
                  'notification-event', 
                   array('text' => 'this is a notification'));

return view('home');

并将其放入 home.blade.php :

<script src="//js.pusher.com/3.0/pusher.min.js"></script>
<script>

    var pusher = new Pusher("{{env("PUSHER_KEY")}}");
    var channel = pusher.subscribe('notification-channel');
    channel.bind('notification-event', function(data) {
      alert(data.text);
    });

但这会使通知向任何用户显示。 这还有另一个问题,用户应该只能在主页上接收通知!

那么,我应该怎么做才能向特定用户发送通知并让用户从任何页面收到通知?


要使用户从任何页面接收它,请将您的 Pusher 代码放入您的layout.blade.php如果你有任何。或者所有页面都将扩展的任何其他文件。

要使其发送给特定用户,您可以通过将用户 ID 附加到频道来使用,例如

'notification-channel:' . $user->id

所以在你的布局文件中你可以收听该频道

var user = <?php echo $user ; ?>;
var channel = pusher.subscribe('notification-channel:' + user.id);

尽管只有那么简单的用户可能会收到通知,但您的通知仍然是公开的。这意味着任何人都可以操纵自己的 ID 并接收其他人的通知。如果您想要私人通知,可以按照此处的说明进行操作:https://laravel.com/docs/5.4/broadcasting#authorizing-channels https://laravel.com/docs/5.4/broadcasting#authorizing-channels

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

向特定用户发送推送通知 - Laravel 的相关文章

  • Laravel Mongo 多对多关系在哪里不起作用

    我有两个以多对多关系相互关联的 mongo 文档 一个称为律师 另一个称为律师 我的律师模型有 public function cases return this gt belongsToMany App LawCase 我的 LawCas
  • Laravel 在公共文件夹中下载 pdf

    我在公共 下载中有一个pdf文件 我只想链接到它并下载它或在浏览器中打开它 我尝试击打http localhost 8000 downloads brochure pdf在浏览器中 但我只是看到一个没有错误的白屏 在 Chrome DevT
  • 模型在自身内部调用自己是一种不好的做法吗?

    这是一个在 Laravel 中使用 Eloquent 的示例 假设我正在开发 CMS 控制器获取路由并通过路由查找页面 该模型提供了一个静态函数 该函数使用路由来找出它正在查找的行的 id 那么模型使用本身执行数据库查询并返回结果 控制器代
  • 特定文件夹的 .htaccess 例外

    这是我的 htaccess 代码 位于根文件夹中
  • Laravel 集合到数组

    我有两个模型 Post and Comment 许多评论属于一个帖子 我正在尝试以数组形式访问与帖子相关的所有评论 我有以下内容 它提供了一个集合 comments collection post gt comments gt get 我该
  • Laravel - 调用未定义的方法 Illuminate\Database\Query\Builder::user()

    我正忙于Laravel 从头开始 更新记录和预加载 https laracasts com series laravel 5 from scratch episodes 10 我已经遵循了该教程 但在尝试在 CardsController
  • 重置密码 电子邮件

    我是 Laravel 开发新手 目前正在从事小型项目 我想自定义重置密码的电子邮件模板 甚至将其链接到完全不同的模板 对于身份验证脚手架 我使用了php artisan make auth命令 但是 默认重置密码功能使用默认的 Larave
  • Laravel 5 - 更改默认日志位置,将日志文件移至应用程序之外

    如何更改默认日志文件位置
  • updateExistingPivot() 不起作用

    我正在尝试像这样更新数据透视表 public function updatePermission id permissionId permissionValue Input get value user User find id perms
  • Laravel 作业推送至 Amazon SQS 但未处理

    我正在运行 Laravel 5 3 我正在尝试测试队列作业 并且我已将队列配置为使用 Amazon SQS 我的应用程序能够将作业推送到队列中 并且我可以在 SQS 中看到该作业 但它留在那里 从未被处理 我尝试过跑步php artisan
  • 从 octobercms 中的非 ajax 表单获取输入值

    我正在尝试构建一个简单的搜索功能 下面是我的搜索表格
  • Android 默认通知边距

    再会 我创建了完全自定义的通知视图 但在不同的设备上左 起始 边距不同
  • 这个条带请求是什么?为什么它会多次触发?

    对于使用 stripe 的 Laravel 应用程序 此请求https r stripe com 0被解雇多次 如下所示 我刷新主页后 这些请求立即被触发 问题是我最近得到了一个429 too many requests我的实时服务器出现错
  • 如何将 Laravel-5.6 转换为 .exe

    我正在本地主机中加载项目 我的管理员要求我将 laravel 5 6 与 mysql 一起转换为 exe 我是这方面的新手 不知道 有哪位高手可以指导一下吗 提前致谢 我不确定你的管理员是否应该要求你将 Laravel 项目转换为 exe
  • 命令“tinker”未定义

    从 5 3 升级到 5 4 后 请按照说明操作 为了继续使用 Tinker Artisan 命令 您还应该安装 laravel tinker 软件包 composer require laravel tinker 安装软件包后 您应该添加
  • Laravel - 记录“找不到路线”

    当找不到路线时 我没有看到任何日志输出 我在开发模式下运行 laravel 当遇到不存在的路线时 我会看到此错误 message exception Symfony Component HttpKernel Exception NotFou
  • 注意通知持续时间

    是否可以将抬头通知的持续时间设置为无限 现在它只显示 5 秒 已经尝试过不同的事情 例如更改类别 但持续时间始终为 5 秒 这是我的代码 Notification notification notificationBuilder setCa
  • 如何在自定义组件中使用 Vue.js 插件?

    我需要输出一个表格及其内容 可以通过 Ajax 进行更新 所以我打算使用vue tables 2 https github com matfish2 vue tables 2 https github com matfish2 vue ta
  • Laravel 从 5.6 升级到 Laravel 6

    我有一个项目https github com javedbaloch4 Laravel Booking https github com javedbaloch4 Laravel Booking发展于Laravel 5 6现在我想将其升级到
  • 一次播种多行 laravel 5

    我目前正在尝试为我的用户表播种 如果我像这样尝试 2 行 就会失败 如果我只使用单个数组而不是 users 数组内的 2 个数组来创建一些假数据 那么效果很好 我做错了什么 正确的方法是什么 class UserTableSeeder ex

随机推荐

  • 使用 gradle 在 intellij 中从 JUnit 4 升级到 JUnit 5

    我想将我的 Gradle 项目测试从 JUnit 4 转换为 JUnit 5 由于有很多测试 我不想同时转换它们 我尝试配置我的build gradle像这样 apply plugin java compileTestJava source
  • 使用 c3 js 从 json 绘制饼图

    以代码为例 我需要生成一个有 4 个分区 site1 site2 的饼图 每个分区对应于其各自的上传值 在上面的代码中我无法实现这一点 我已指定值 upload 我必须指定的确切值是多少 Thanks chart c3 generate d
  • 处理并发文件写入

    我正在开发一个 ASP NET 应用程序 它接受用户输入并将其序列化到文本文件中 现在 当文件仍在写入时出现第二个更新请求时 将生成 IOException 如何处理对此文件的并发更新请求 你可以实现一个生产者 消费者 其中主线程将对象添加
  • NeuQuant.js(JavaScript颜色量化)JS转换中隐藏的bug

    NeuQuant js https github com antimatter15 jsgif blob master NeuQuant js当图像宽度和高度是 100 的倍数时效果很好 300x300 否则的话 显然有一个bug 299x
  • 如何在 Chrome 开发工具中设置元素的 :hover 状态并编辑子元素的样式

    假设我们有这样的风格 parent child parent hover child 两个选择器都为子元素设置样式 我想要的是编辑第二种样式 我点击 parent并设置 hoverChrome 开发者工具中的状态 单击一个 child元素来
  • 2d 矩阵的 Numpy 矩阵乘法得到 3d 矩阵

    我有两个 numpy 数组 比如 A array 0 1 2 3 4 5 B array 6 7 8 9 10 11 对于 A 和 B 的每一行 分别表示 Ra 和 Rb 我想计算转置 Ra Rb 因此 对于给定的 A 和 B 值 我想要以
  • “NoneType”对象没有属性“secret_key”

    我收到这个错误 NoneType 对象没有属性 secret key 当我尝试使用更新我的应用程序时git pull我已经在以下路径配置了AWS凭证 纳米 home USER aws config 我让它 我提到的存档 如下 profile
  • 如何将非消耗性订阅改为自动续订并保留老用户?

    我在 Apple Store 中有非消耗品定价的应用内购买功能 该应用程序的使用需要付费 如何将非消耗性订阅更改为自动续订订阅 以某种方式保留购买该应用程序的用户 新用户可通过自动续订订阅付费 不 你无法更改它 只需确保在你的应用程序中 你
  • android putextra 没有启动活动

    我需要帮助 我有两个活动和一个数据库 我想做的就是当我按下活动 A 中的按钮时 我将 editText 中的字符串发送到活动 B 在活动 B 中 我尝试将该字符串插入我的数据库中并将其显示在列表视图中 如果我在活动 A 中启动活动 B 则一
  • 如何让iOS应用程序与蓝牙连接?

    如何使用蓝牙制作iOS应用程序 我需要一个通过蓝牙与其他设备 例如笔记本电脑 连接并交换数据的应用程序 许多 BLE 软件包 但无法找到经典蓝牙的软件包 如果您想使用Apple iOS设备的经典蓝牙接口 您必须遵守 接受苹果的MFi htt
  • PHP:在线程之间共享静态变量

    我在 PHP 的不同线程之间共享静态变量时遇到问题 简而言之 我想要 1 在一个线程中写入静态变量 2 在其他线程中读取并进行所需处理并清理 为了测试上述要求 我编写了下面的 PHP 脚本
  • Guava 缓存“expireAfterWrite”似乎并不总是有效

    private Cache
  • 如何将 5000 多行从 google Analytics 导出到 Excel

    我正在尝试将 5000 多行从 google Analytics 导出到 Excel 工作表 但我无法这样做 我在谷歌上搜索了很多关于它的内容 并尝试了 url 修改来替换explorer table rowCount 3D5000 wit
  • Android Facebook 登录:如何在 XML 中没有 LoginButton 的情况下使用 LoginManager 检查登录情况

    我已经使用 LoginButton 在我的 Android 应用程序中完成了 facebook 登录检查 但我想使用 LoginManager 进行检查 我怎样才能修改我的代码以这种方式工作 LoginButton loginButton
  • 获取 Chrome 的当前区域设置

    我正在使用此 API 确定浏览器的当前区域设置 var language window navigator userLanguage window navigator language 此次回归 fr FR 在 IE 中 但它只返回 fr
  • 在 JavaScript 中从 DataURL 下载文件

    从 DataURL 获得的这个字符串中 将其下载为文件的最佳方法是什么 到目前为止我得到的是使用基本的window open myDataURL 但我无法以这种方式更改文件名 window open data application msw
  • Spring Boot 3 与 Lombok

    将我的项目从 Spring Boot 2 7 升级到 3 0 后 我得到 找不到标志 由于 Lombok 生成的代码而导致编译器错误 有什么方法可以让它协同工作 Spring Boot 3 和 Lombok 注释 您应该更新到 lombok
  • 右键单击以选择 Datagridview 中的一行并显示一个菜单以将其删除

    我的 DataGridView 中只有几列 而我的行中有数据 我在这里看到了一些解决方案 但我无法将它们组合起来 只需右键单击一行 它将选择整行并显示一个菜单 其中包含删除该行的选项 当选择该选项时 它将删除该行 我做了几次尝试 但都不起作
  • 了解 R 中的列表索引和括号约定

    我几乎了解 R 中的列表索引 但我有一些挥之不去的问题 具体来说 我试图了解使用多个索引来获取列表中的不同数据层 以及在每个数据类型的每个级别使用的括号类型 首先 我将展示一个简单的示例列表和我到目前为止的理解 Make an exampl
  • 向特定用户发送推送通知 - Laravel

    在我的 laravel 应用程序中 我想使用 Pusher 向特定用户发送通知 我将此代码放入我的方法中 pusher App make pusher pusher gt trigger notification channel notif