【问题标题】:how does real time applications interact with website admin panel? [closed]实时应用程序如何与网站管理面板交互? [关闭]
【发布时间】:2019-03-01 09:35:25
【问题描述】:

我的问题是关于逻辑而不是特定于 api 的。

如果我有一个电子商务应用程序,它包含 2 个独立的组件(一个用于卖方,另一个用于买方),并且我有一个用于客户支持的 laravel php 管理面板(作为超级管理员)和卖家的amdin面板可以使用网络浏览器编辑他们的产品页面并实时回复客户。 (现在卖家有 2 个选项 android 应用程序和网页来做同样的工作)

网站(管理页面)和android应用程序的托管是如何完成的,据我了解是:

1- 管理面板(网页)将在托管 Laravel 和 MySQL 数据库的服务器上。

2- Android 应用程序将从服务器的数据库中检索数据。

3- 当卖家使用他们的安卓应用程序添加产品时..服务器上的数据库将被更新..所以买家可以看到新添加的项目。

4-当买家在 android 应用程序中使用聊天界面时,此数据库将不会使用托管 Laravel(或任何框架)管理页面的服务器。而是会连接到实时平台,如 firebase。

这就是我对这类应用的理解,以及web server和android app之间的整体关系。这个逻辑对吗?请任何建议都会有所帮助。

【问题讨论】:

  • I'm I right? 这是选项之一,它可能应该有效,但取决于它们的实现方式。 Is there any better way ? 这是基于意见的,因为不同的人可以对更好的方法有不同的意见。基于意见的问题在这里是题外话。
  • stackoverflow.com/help/how-to-ask 我假装我在和一位同事交谈……我不是在问一个数学问题,其中 1+1=2 这是一个基于设计的问题,每个人做的方式不同 什么是最好的方法是一个问题......所以让你的哲学远离我的帖子。

标签: php android database firebase infrastructure


【解决方案1】:

我使用推送器进行实时聊天,您可以将消息存储在数据库中并使用推送器广播 MessageSent 事件,在您的网站/应用程序前面收听频道,并使用推送器接收到的信息附加聊天。

你必须制作 2 个频道

Broadcast::channel('/user/chat/{userId}', function ($user) {
    return $user->id === $userId;
});

Broadcast::channel('/admin/chat', function () {
    return $user->isAdmin === 1;
});

并将用户消息广播到/admin/chat 路由和管理员回复/user/chat/{userId},希望对您有所帮助

阅读文档:https://laravel.com/docs/5.7/broadcasting

【讨论】:

  • 感谢您的回答.. 这很有帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-25
  • 2012-01-04
  • 1970-01-01
  • 1970-01-01
  • 2011-11-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多