【问题标题】:Using custom api with Firebase cloud functions将自定义 api 与 Firebase 云函数一起使用
【发布时间】:2020-07-08 10:48:15
【问题描述】:
我正在构建一个应用程序,该应用程序需要我使用 Cloud Functions 来进行设备到设备的消息传递。我过去使用过云功能,但只使用 Firestore 和实时数据库。但我的应用程序不使用这些平台。我正在使用带有自定义 API 的自定义后端。所以这是我的问题:
有没有一种方法可以让我使用 Cloud Functions 与我的 api 进行交互以进行更改,就像它在 Firestore 中的工作方式一样?如果是,请分享一些有用的资源。
【问题讨论】:
标签:
flutter
dart
google-cloud-functions
【解决方案1】:
如果我对您的理解正确,您是在询问是否可以使用简单的 API 从 Flutter 应用中调用自定义 Cloud Functions,类似于调用 Cloud Firestore 的方式。
在这种情况下,您最接近的方法是创建一个所谓的Callable Cloud Function,然后使用cloud-functions plugin 从您的 Flutter 代码中调用它。使用 this 调用您的自定义可调用 Cloud Functions 需要以下步骤:
import 'package:cloud_functions/cloud_functions.dart';
-
获取可调用函数的实例:
final HttpsCallable callable = CloudFunctions.instance.getHttpsCallable(
functionName: 'YOUR_CALLABLE_FUNCTION_NAME',
);
-
调用函数:
dynamic resp = await callable.call();
或
带参数调用函数:
dynamic resp = await callable.call(<String, dynamic>{
'YOUR_PARAMETER_NAME': 'YOUR_PARAMETER_VALUE',
});