laravel - 事件触发时限制对页面的访问
问题描述
我创建了一个预订系统,它每 5 分钟与 Google 日历同步一次,还会截断旧数据并从日历中获取新数据,这个过程大约需要 2-3 秒。
我想要做的是,当从 Google 日历获取数据的事件发生时,我想在这 2-3 秒内禁用对预订系统路线的访问,然后在事件结束时再次启用它,我想这样做因为它会截断旧数据并获取新数据,所以如果有人在这 2-3 秒内查看预订系统,那么所有预订时间都是免费的,我不希望这种情况发生。
这种事情可能吗?谢谢并恭祝安康!
解决方案
好吧,我的建议是在您的用户表中创建一个新字段,例如:is_google_sync_active 和路由中间件。
然后就在您开始同步之前。您将该字段更改为 true 并且在您的新中间件中您可以检查是否同步。是否处于活动状态,然后在您同步时。结束您只需将字段的值再次更改为false。因此,每次当用户尝试传递到您的同步路由时,他都会传递您的中间件,该中间件将处理所有工作。
此外,如果同步,您可以将用户重定向到显示状态或进度的页面。正在处理。
推荐阅读
- c# - How to convert whole XAML file to System.Windows.Media.Geometry object?
- utf-8 - Google Actions - 使用 AWS API Gateway 时的 UTF-8 解码
- r - R 在使用 dplyr 过滤时正确使用“rank”
- java - 从 7 更新到 10 后 Jar 文件不会显示资源
- node.js - 在 readline 启动后定义事件处理程序
- php - PHP will not execute bash in Ubuntu server
- swift - 让断点打印调用函数的名称
- javascript - How to verify client-side text in NodeJS?
- javascript - Finding if something is in an array or not in javascript
- excel - 将值与一些字母数字进行比较