我在模拟器中部署了一个gcloud后台函数(pubsub)。
从命令行
成功调用它functions call helloPubSub --data='{"message":"Hello World"}'
如何从本地服务器代码调用gcloud本地函数?
= = =
以下是我在服务器端发布到主题
的代码pubsub
.topic(topicName)
.publisher()
.publish(dataBuffer)
.then(results => {
const messageId = results[0];
console.log(`Message ${messageId} published.`);
res.status(200)
res.send({hello:'world'})
})
.catch(err => {
console.error('ERROR:', err);
res.status(200)
res.send({err:err})
});
我收到以下错误消息
{"err":{"code":7,"metadata":{"_internal_repr":{}},"note":"Exception occurred in retry method that was not classified as transient"}}
答案 0 :(得分:1)
在official docs中声明:
注意:这些服务不会调用在模拟器中部署的功能,如云存储或云发布/订阅等非HTTP触发器。模拟器仅用作开发环境,因此您需要手动调用这些函数以调用它们。
因此,如果您使用Cloud Pub / Sub触发器在本地部署了一个函数,则调用它的唯一方法是使用命令行命令:
functions call [your-function]