当前位置: 首页 > 知识库问答 >
问题:

JSON错误:“需要'STRING','}',得到'undefined'”

毕嘉
2023-03-14

编辑:我把单引号改成双引号,短绒没有抱怨。

我把这个放到jsonlint.com,我得到了这个错误:

Error: Parse error on line 1:
{   'bandwidth_in': {       
--^
Expecting 'STRING', '}', got 'undefined'

其他json棉绒也有类似的结果。最初,数值是空的,所以我用单引号将它们括起来,以消除< code>jq错误:

parse error: Invalid numeric literal at line 2, column 16

但我还是为JQ买的。

我没有看到任何未定义的键,我错过了什么?

{
    'bandwidth_in': {
        'GE4': {
            'value': '16292',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4',
                    'attributes': {
                        'snmp_index': 'GE4'
                    }
                }
            },
            'attributes': {
                'bandwidth': '15157250.0'
            }
        }
    },
    'bandwidth_out': {
        'GE4': {
            'value': '14616',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4',
                    'attributes': {
                        'snmp_index': 'GE4'
                    }
                }
            },
            'attributes': {
                'bandwidth': '15150500.0'
            }
        }
    },
    'jitter_in': {
        'GE4': {
            'value': '0.0',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4'
                }
            }
        }
    },
    'jitter_out': {
        'GE4': {
            'value': '0.002',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4'
                }
            }
        }
    },
    'latency_in': {
        'GE4': {
            'value': '0.001',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4'
                }
            }
        }
    },
    'latency_out': {
        'GE4': {
            'value': '0.003',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4'
                }
            }
        }
    },
    'packetloss_in': {
        'GE4': {
            'value': '0',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4'
                }
            }
        }
    },
    'packetloss_out': {
        'GE4': {
            'value': '0',
            'tree': {
                '2': {
                    'name': 'GE4',
                    'key': 'GE4'
                }
            }
        }
    }
}

我还在网上看到一篇参考文章,不允许对密钥使用裸数字,公平地说,任何具有非字符串密钥的JSON都不应该通过测试吗?

共有1个答案

陶沛
2023-03-14

正如雷米·拉博所说

字符串不支持单引号作为分隔符,只支持双引号。

当您有一个包含内联JSON的字符串时,您有一些选项:

外部双引号和内部转义双引号

s Json = "{\"键\":\"value\"}"

外部单引号

sJson='{"key":"value"}'

 类似资料:
  • 我不知道我做错了什么。。。我得到了球员的错误。draw()函数。它所说的不好的争论是在爱情中。图样矩形()方法。这意味着v.x是一个糟糕的论点。但它应该起作用。v.x和v.y都应该工作。因为它访问表或数组中元素的字段,对吗?有人能告诉我我做错了什么,以及如何解决这个问题吗?非常感谢!这是我的代码:

  • 我的代码如下。这是一个学校项目,要求我在不使用语句的情况下完成此操作。我不明白为什么我会犯错误,包括: 代码:

  • 我有一个问题在这里我不知道如何解决这个问题,本尝试任何我知道解决这个仍然没有解决方案,请帮助 我有2个模块 主要的卢阿: 外部模块dog.lua: 堆栈回溯: 现在还在想在这里做什么。这是唯一阻碍我项目的事情。请帮忙,谢谢:)

  • 编辑#2:这可能与记忆有关。日志正在堆外显示。 是的,肯定与记忆有关。基本上docker日志会报告java堆外的所有速度,但jupyter web笔记本不会将其传递给用户。相反,用户会遇到内核故障和偶尔的奇怪行为,比如代码编译不正确。 Spark 1.6,尤其是docker run-d。。。。jupyter/all spark笔记本电脑 希望统计约100万笔交易中的账户。 这很简单,它可以在没有火

  • 当尝试ViewChild时,我会得到错误。错误为“未提供'opts'的参数。” @ViewChild都给出了错误。 ts(11,2):错误TS2554:应为2个参数,但得到1。

  • 警告:需要Gradle版本2.10。当前版本是2.8。如果使用gradle包装器,请尝试将d:\raymondandroidprojects\TestPayPal\gradle\wrapper\gradle-wrapper.properties中的distributionUrl编辑为gradle-2.10-all.zip