我在从python客户端向Google Cloud pub / sub服务发布消息时遇到了问题。
我有基于rest的公共API,它返回JSON数据。返回的数据在列表中以字典形式存在。
我已经将字典中的值提取到列表中,并使用bytes()转换为bytestring,但它仍然在下面抛出异常。
['EB', 'Pulaski', '2018-03-06 21:50:18.0', '0.5', '41.7930671862', '41.793140551', '-87.7136071496', 'W', 'Central Park', '-1', '1', '-87.7231602513', '55th']
response = requests.get("https://data.cityofchicago.org/resource/8v9j-bter.json")
traffic = response.json()
result_list = []
for d in traffic:
result_list.append([v for k, v in d.items()])
for x in result_list:
print(x)
publisher.publish(topic_path, data = bytes(x))
答案 0 :(得分:1)
根据此处的Python示例,您应该使用x.encode(' utf-8')而不是字节(x)转换为bytestring:https://cloud.google.com/pubsub/docs/publisher#publish-messages-to-a-topic