【问题标题】:Do i run functions in c# or google cloud platform?我是在 C# 还是谷歌云平台中运行函数?
【发布时间】:2021-08-13 04:51:06
【问题描述】:

我希望在我的 firebase 实时数据库发生变化时向用户发送通知。我在我的 Xamarin.Android 应用程序中设置了 FCM。不过,我对 Firebase 还是很陌生,所以我对数据库触发器的工作方式有点困惑。 (https://firebase.google.com/docs/functions/database-events)

我很困惑这个功能,即“OnCreate”或“OnWrite”是写在谷歌云平台还是我的C#代码上?

换一种说法,我是不是:

  1. 在 TypeScript 中编写代码以检测我的数据库中的更改,然后通过 FCM 推送通知,或者
  2. 用 C# 编写代码来检测更改,如下所示:How to get notification in xamarin forms on firebase data change?

谢谢。

【问题讨论】:

    标签: c# android firebase firebase-cloud-messaging


    【解决方案1】:

    要通过 FCM 向 设备发送消息,您必须在代码中指定 FCM server* 键。顾名思义,此密钥应仅用于服务器端代码或其他受信任的环境中。这样做的原因是任何拥有 FCM 服务器密钥的人都可以向您的所有用户发送他们想要的任何消息。如果您要在客户端 C# 代码中包含此密钥,恶意用户可以找到它,您将把您的用户置于危险之中。

    Cloud Functions 允许您在 Google Cloud 的服务器上运行 Node.js 代码的小型 sn-ps 代码,这些代码运行以响应您的 Cloud/Firebase 项目中的事件,例如将文档写入 Cloud Firestore 时。此代码在 Google 的服务器上运行,因此是调用 FCM API 发送通知的理想场所。

    这也是为什么您会看到很多这种方法的例子。但是,如果您已经有另一个服务器端平台,那么调用 FCM API 从那里发送通知也是完全可以的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-25
      • 1970-01-01
      • 2020-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-30
      • 2020-12-11
      相关资源
      最近更新 更多