Javascript 如何从Cloudflare worker内部发布到GCP PubSub主题

Javascript 如何从Cloudflare worker内部发布到GCP PubSub主题,javascript,google-cloud-pubsub,cloudflare-workers,Javascript,Google Cloud Pubsub,Cloudflare Workers,是否可以通过基本HTTP请求发布到GCP PubSub主题?我有一个Cloudflare worker,我想从中直接发布到一个主题。我最初尝试绑定NodeJS模块,但webpack(通过wrangler)无法构建,因为依赖项(特别是tls)在服务器工作环境中不可用 似乎PubSub API上不支持API密钥,而且我一辈子都找不到一种不用SDK就可以使用服务帐户的方法。有点像。存在,但需要OAuth2.0授权。我不确定您是否会遇到与使用NodeJS客户端库相同的问题,但如果是这样,您将不得不使用一

是否可以通过基本HTTP请求发布到GCP PubSub主题?我有一个Cloudflare worker,我想从中直接发布到一个主题。我最初尝试绑定NodeJS模块,但webpack(通过wrangler)无法构建,因为依赖项(特别是
tls
)在服务器工作环境中不可用

似乎PubSub API上不支持API密钥,而且我一辈子都找不到一种不用SDK就可以使用服务帐户的方法。

有点像。存在,但需要OAuth2.0授权。我不确定您是否会遇到与使用NodeJS客户端库相同的问题,但如果是这样,您将不得不使用一个中间服务(即云函数/计算引擎/应用引擎),该服务公开一个可以为您进行身份验证的HTTP端点


有关使用OAuth2.0的更多信息,请参见此处的链接:

谢谢,Alex。您知道它是否需要您不断地刷新令牌,或者我可以创建一个永久的OAuth令牌来无限期地使用吗?我不想创建一个中介Web服务,因为这样做有违主题的初衷。AWS的SNS似乎允许您签署请求,并通过HTTP发出请求。PubSub没有类似的东西吗?我相信所有的访问令牌都有一个过期日期,所以您需要通过刷新令牌检索新的访问令牌。要回答您的另一个问题,不幸的是,唯一受支持的方法是使用您已经尝试过的服务帐户进行身份验证。为了进一步澄清,我们有一个较旧的基于HTTP的客户端库,它使用c发出请求,但这仍然取决于最有可能仍然无法工作的方法,因为它需要TLS。我认为OAauth2方法是使用Cloudflare Workers的唯一方法。您还可以考虑用云函数取代Cloudflare Workers(云函数提供类似的无服务器按执行付费环境)