当我用浏览器在本地端口上侦听时,以下方法返回Hello world。
//节点
app.get('/', (req,res)=>{
res.send('Hello world')
});
我已经将该应用程序导出为一个名为getConstits
的可调用云函数
//节点
exports.getConstits = functions.https.onCall(app);
然后我调用客户端中的函数。
//客户端
final HttpsCallable callable = CloudFunctions.instance.getHttpsCallable(
functionName: 'getConstits',
);
getElec()async{
dynamic resp = await callable.call();
print(resp);
}
但我得到了一个未处理的异常(如果需要,将发布(。cloud函数生成的url返回{"error":{"message":"Bad Request","status":"INVALID_ARGUMENT"}}
。我想把hello world还给客户吗?
可调用函数不支持像常规HTTP函数那样的express应用程序。
如果你想编写一个express应用程序并将其部署到云功能,你必须遵循具有HTTP功能的express应用的说明。如果你这样做,你将无法在客户端上使用可调用函数SDK——你将不得不使用常规的HTTP库。
如果您想编写一个可调用函数来使用所提供的客户端SDK进行调用,您只需在没有express帮助的情况下编写函数的逻辑,因为可调用SDK处理所有HTTP实现细节。