Python Pub/Sub 脚本上的 JSONDecodeError
JSONDecodeError on Python Pub/Sub Script
这是我的完整代码。此脚本由云函数中的 pub/sub 触发,并通过键和值从 pub/sub 中解析出消息。为了测试,我有一个示例字符串作为代码中的消息。
import base64
import os
import json
#import subprocess
#import shlex
def hello_pubsub(event, context):
"""Triggered from a message on a Cloud Pub/Sub topic.
Args:
event (dict): Event payload.
context (google.cloud.functions.Context): Metadata for the event.
"""
pubsub_message ='{"name": instance1, "zone": us-west1-c, "project": projectname}'
pubsub_json = json.loads(pubsub_message)
for key,value in pubsub_json.items():
print (key,value)
hello_pubsub('event', 'context')
然而,当我运行这个时,我得到这个错误
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 10 (char 9)
在 VSCode 中使用调试器,错误由 json.loads 行触发。
我试过使用不同版本的 json.loads 但我不确定为什么会出现此错误,当我使用 json.dumps 时出现 sting/integers 错误。有什么想法吗?
这确实无效JSON。需要加引号的字符串:
pubsub_message ='{"name": "instance1", "zone": "us-west1-c", "project": "projectname"}'
虽然我不太明白这是要测试什么。
这是我的完整代码。此脚本由云函数中的 pub/sub 触发,并通过键和值从 pub/sub 中解析出消息。为了测试,我有一个示例字符串作为代码中的消息。
import base64
import os
import json
#import subprocess
#import shlex
def hello_pubsub(event, context):
"""Triggered from a message on a Cloud Pub/Sub topic.
Args:
event (dict): Event payload.
context (google.cloud.functions.Context): Metadata for the event.
"""
pubsub_message ='{"name": instance1, "zone": us-west1-c, "project": projectname}'
pubsub_json = json.loads(pubsub_message)
for key,value in pubsub_json.items():
print (key,value)
hello_pubsub('event', 'context')
然而,当我运行这个时,我得到这个错误
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 10 (char 9)
在 VSCode 中使用调试器,错误由 json.loads 行触发。
我试过使用不同版本的 json.loads 但我不确定为什么会出现此错误,当我使用 json.dumps 时出现 sting/integers 错误。有什么想法吗?
这确实无效JSON。需要加引号的字符串:
pubsub_message ='{"name": "instance1", "zone": "us-west1-c", "project": "projectname"}'
虽然我不太明白这是要测试什么。