Firebase:如何运行';HTTPS可调用函数';本地使用云函数shell?

Firebase:如何运行';HTTPS可调用函数';本地使用云函数shell?,firebase,google-cloud-functions,Firebase,Google Cloud Functions,我在中找不到这个用例的解决方案 它们是HTTPS可调用函数 要使用云函数shell在本地运行函数进行测试吗 函数将接收到的数据保存到Firestore 还需要“auth”上下文信息 我的代码如下。提前谢谢 功能: 客户电话: 云函数有相应的模拟器。检查这个,它可以适合你的情况。它不是shell函数,但出于测试目的,我认为它仍然可以为您工作有一个api正好用于此用例,请参阅 我在javascript(客户端)中使用了它,如下所示- button.addEventListener('click

我在中找不到这个用例的解决方案

  • 它们是HTTPS可调用函数
  • 要使用云函数shell在本地运行函数进行测试吗
  • 函数将接收到的数据保存到Firestore
  • 还需要“auth”上下文信息
我的代码如下。提前谢谢


功能:

客户电话:


云函数有相应的模拟器。检查这个,它可以适合你的情况。它不是shell函数,但出于测试目的,我认为它仍然可以为您工作

有一个api正好用于此用例,请参阅

我在javascript(客户端)中使用了它,如下所示-

button.addEventListener('click',()=>{
//use locally deployed function
firebase.functions().useFunctionsEmulator('http://localhost:5001');
//get function reference
const sayHello = firebase.functions().httpsCallable('sayHello');
sayHello().then(result=>{
    console.log(result.data);
}) 
})
其中sayHello()是可调用的firebase函数

当客户端是android仿真器/设备时。使用10.0.2.2代替localhost

颤振的代码也是这样的-

CloudFunctions.instance.useFunctionsEmulator(origin: 'http://10.0.2.2:5000')
    .getHttpsCallable(functionName: 'sayHello')

这在今天是不可能的。如果你的目的是测试你的代码。我建议创建2个firebase项目(1)开发,您还可以进行一些集成测试(通常使用模拟数据抽象数据库调用)和(2)生产项目,您可以在其中部署测试代码。感谢您的回答。是否有方法连接我的客户机(使用firebase web SDK)到本地服务器而不是使用shell?@DougStevenson何时准备好?
button.addEventListener('click',()=>{
//use locally deployed function
firebase.functions().useFunctionsEmulator('http://localhost:5001');
//get function reference
const sayHello = firebase.functions().httpsCallable('sayHello');
sayHello().then(result=>{
    console.log(result.data);
}) 
})
CloudFunctions.instance.useFunctionsEmulator(origin: 'http://10.0.2.2:5000')
    .getHttpsCallable(functionName: 'sayHello')