Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python发布/订阅脚本上的JSONDecodeError_Python_Json_Google Cloud Platform_Runtime Error_Google Cloud Pubsub - Fatal编程技术网

Python发布/订阅脚本上的JSONDecodeError

Python发布/订阅脚本上的JSONDecodeError,python,json,google-cloud-platform,runtime-error,google-cloud-pubsub,Python,Json,Google Cloud Platform,Runtime Error,Google Cloud Pubsub,这是我的全部代码。此脚本由云函数中的发布/订阅触发,并按键和值从发布/订阅解析消息。对于测试,我有一个示例字符串作为代码中的消息 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:

这是我的全部代码。此脚本由云函数中的发布/订阅触发,并按键和值从发布/订阅解析消息。对于测试,我有一个示例字符串作为代码中的消息

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"}'

我真的不明白这是要测试什么

这确实是无效的JSON。需要引用字符串:

pubsub_message ='{"name": "instance1", "zone": "us-west1-c", "project": "projectname"}'

我真的不明白这是要测试什么

您的JSON没有正确引用。您的JSON没有正确引用。我需要将name、zone和project解析为3个单独的变量,所以这是一个测试,看看它是否可以被解析。这个答案也有效。非常感谢。抱歉,如果这是一个愚蠢的问题,因为我是新手,我需要将名称、区域和项目解析为3个独立的变量,所以这是一个测试,看看它是否可以被解析。这个答案也有效。非常感谢。对不起,如果这是一个愚蠢的问题,因为我是新来的