从 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
我正在尝试将 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