我正在尝试使用google的云功能,我所有的东西都工作得很好,但是我的消息并没有被公开。
我做了这些事:
1)创建一个主题
2)创建了一个函数
3)设置的函数触发器
4)选择公共主题
5)将节点版本设置为8。
这是我的默认云功能:
/**
* Triggered from a message on a Cloud Pub/Sub topic.
*
* @param {!Object} event Event payload.
* @param {!Object} context Metadata for the event.
*/
exports.helloPubSub = (event, context) => {
const pubsubMessage = event.data;
console.log(Buffer.from(pubsubMessage, 'base64').toString());
};它将为本主题创建2个订阅,一个是拉,另一个是推送。
我的云功能正在被调用,但我的消息没有被确认。
根据文档
注意:在成功执行函数时,云函数会在内部锁定消息。有关如何使用重试处理故障的信息,请参阅重试后台函数。
因此,函数应该自动确认它不工作。
这个流程中有什么问题。我做错什么了?
谢谢
发布于 2020-09-10 22:12:38
您不需要显式地创建发布云函数的订阅。
当部署云函数并将其指向主题时,订阅将自动创建。
your-topicgcloud pubsub topics create your-topicyour-topic的函数(这会自动创建订阅):
gcloud functions deploy your-function --region=us-central1 --trigger-topic=your-topic --runtime=python37 --entry-point=main使用cloudfunction代码从文件夹中运行deploy命令。您可以更改runtime和entry-point以匹配您的用例。
您创建的任何辅助订阅都没有使用者,因此消息不会被确认。另外,如果您的云功能失败了,它的消息可能不会被确认。
发布于 2019-04-11 08:22:42
如果您想尝试使用Cloud /Sub触发器编写、部署和触发背景云函数,那么下面的文档页更好。
https://cloud.google.com/functions/docs/tutorials/pubsub
我觉得你需要触发这个功能。
gcloud pubsub topics publish YOUR_TOPIC_NAME --message YOUR_MESSAGEhttps://stackoverflow.com/questions/55605754
复制相似问题