【问题标题】:Can we push/pull message from angular4 using google cloud pubsub?我们可以使用 google cloud pubsub 从 angular4 推送/拉取消息吗?
【发布时间】:2017-08-07 12:47:12
【问题描述】:

在 Angular4 中,我们可以在不调用后端的任何服务/代码的情况下直接将消息推送/拉取到谷歌云 pubsub 吗? 如果可以,我们该怎么办?

提前致谢。

【问题讨论】:

    标签: angular google-cloud-pubsub


    【解决方案1】:

    虽然技术上可行,但通过 Angular 等前端订阅消息将是 Google Cloud Pub/Sub 的反模式。如果您这样做,将会发生以下两种情况之一:

    1. 您的前端都会从同一个订阅中获取消息,这意味着并非每个前端都会收到所有消息。
    2. 您将为每个订阅使用不同的订阅,并且很快就会达到10,000 subscriptions 的限制。

    直接从 Angular 发布在技术上也是可行的。对于发布者和订阅者,都有一个REST API。但是,您必须确保您的客户端具有必要的authentication,这可能意味着设置一个服务帐户,使用 OAuth2 从您的服务器进行身份验证,并在客户端中使用该身份验证。你可能不想这样做。

    相反,运行前端服务器更为典型,该服务器接收来自客户端的请求并将其发布到 Cloud Pub/Sub,同样,在订阅端,接收消息并根据需要将它们传递给客户端。

    【讨论】:

    • "...在订阅端,接收消息并根据需要将它们传递给客户端" 如何?我看到了 2 种方式 - 客户端轮询或 websockets ......它会这样工作吗?或者基于浏览器的(ReactJS/Angular)客户端有更好的选择吗?提前致谢!
    猜你喜欢
    • 1970-01-01
    • 2015-11-10
    • 1970-01-01
    • 2019-07-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 2014-02-21
    • 2020-10-29
    相关资源
    最近更新 更多