我正在尝试将日志从gcp路由到pub / sub,但是我需要将日志发送到的端点需要JSON主体的标头中的许可证密钥,才能满足POST请求。我如何能够向通过日志路由的JSON正文添加标头?或者如何将此键添加到推送端点屏幕?
答案 0 :(得分:1)
此答案由@John Hanley在评论部分提供:
订阅不添加数据。订阅直接指示消息的状态 交付给订户。您将需要在其中添加自定义标题 发送到发布/订阅消息的数据。有关您可以做什么的详细信息 这样做,请阅读link。
答案 1 :(得分:0)
目前,无法在发布/订阅推送订阅中包含自定义(授权)标头。 (1)您可以使用GCP内的终结点向pub / sub消息发送消息,该消息将GCP用作身份验证提供程序。 (2)另一种选择(根本不建议使用)是在URL中使用API密钥并将其发送到您选择的端点。
(1)您可以利用云功能或云运行等其他GCP服务来转发发布/订阅消息。使用适当的标头创建一个新请求,并将消息传递给另一个端点。这种方法的缺点是,由于每次传递单个消息时都会启动云功能或云运行实例,因此计算成本可能会失控。
您可以考虑在Golang中编写云函数以提高速度。另一方面,云构建每个实例最多可以处理80个并发请求。有人
(2)尽管我仍然经常看到它,但是使用API密钥是一种不好的做法。 API密钥没有到期时间,因此当它们被盗时,有人可以无限期访问您的API。这就是Bearer令牌存在寿命有限的原因。
这两个选项都不是完美的,但是我会在Golang中编写一个占用空间小的云函数,以将消息传递到您选择的端点。