在 python 中获取 GCP PubSub 主题策略时出现 Unicodeerror
Unicodeerror while getting GCP PubSub topic policy in python
我有一个函数可以获取 Google Cloud PubSub 上某个主题的策略详细信息。我正在获取策略并在其中添加权限,然后更新它。我正在使用 python sample docs 中的示例代码之一。我正在使用 create_iot_topic 函数。
我的代码如下:
def create_iot_topic(topic_url):
# eg: topic_url = 'projects/<projectname>/topics/<topicname>'
topic1 = pubsub_client.topic(topic_url)
print(topic_url)
policy = topic1.get_iam_policy()
publishers = policy.get('roles/pubsub.publisher', [])
publishers.add(policy.service_account(
'cloud-iot@system.gserviceaccount.com'))
policy['roles/pubsub.publisher'] = publishers
topic1.set_iam_policy(policy)
return topic1
调用此函数时,第 5 行(get_iam_policy() 函数)出现错误:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019' in position 1438: ordinal not in range(128)
我需要帮助解决这个问题。谁能指出我哪里出错了。
谢谢,
上面给定的link中的代码最近更新了,现在没有错误。
我有一个函数可以获取 Google Cloud PubSub 上某个主题的策略详细信息。我正在获取策略并在其中添加权限,然后更新它。我正在使用 python sample docs 中的示例代码之一。我正在使用 create_iot_topic 函数。 我的代码如下:
def create_iot_topic(topic_url):
# eg: topic_url = 'projects/<projectname>/topics/<topicname>'
topic1 = pubsub_client.topic(topic_url)
print(topic_url)
policy = topic1.get_iam_policy()
publishers = policy.get('roles/pubsub.publisher', [])
publishers.add(policy.service_account(
'cloud-iot@system.gserviceaccount.com'))
policy['roles/pubsub.publisher'] = publishers
topic1.set_iam_policy(policy)
return topic1
调用此函数时,第 5 行(get_iam_policy() 函数)出现错误:
UnicodeEncodeError: 'ascii' codec can't encode character u'\u2019' in position 1438: ordinal not in range(128)
我需要帮助解决这个问题。谁能指出我哪里出错了。
谢谢,
上面给定的link中的代码最近更新了,现在没有错误。