从 Google 云 Pub/Sub 而不是 base64 获取未编码的数据

Getting unencoded data from Google cloud Pub/Sub instead of base64

我正在尝试将 Python 库用于 Pub/Sub,但我一直收到此错误:TypeError: Incorrect padding。一些快速谷歌搜索揭示了这个问题:https://github.com/GoogleCloudPlatform/google-cloud-python/pull/2527

然而,这并没有解决问题 - 事实上,打印出的数据显示数据根本不是 base64 编码的,在库中设置 data = raw_data 解决了这个问题。

我们从 Java 发送消息,这是我们使用的代码:

PCollection<String> userActionsJson = userActionsRaw.apply(ParDo.of(new BigQueryRowToJson()));
       String topicNameFull = "projects/" + options.getProject() + "/topics/" +
               options.getUsersActionsTopicName() + "-" + options.getProduct();
       userActionsJson.apply(PubsubIO.Write.named("PublishToPubSub")
               .topic(topicNameFull));

但是,尝试通过控制台发送消息时会发生同样的事情。

最近有什么变化意味着数据不再使用 base64 编码吗?

这个问题现在已经在 master 中得到解决:https://github.com/GoogleCloudPlatform/google-cloud-python/issues/2577