为了账号安全,请及时绑定邮箱和手机立即绑定

以下错误可能是什么问题:顶级值之后的无效字符“-”?

以下错误可能是什么问题:顶级值之后的无效字符“-”?

Go
梵蒂冈之花 2022-05-10 16:06:08
我正在使用 golang 库 go-jmespath 来查询 json 文件。我的代码如下所示:package mainimport (    "encoding/json"    "log"    "github.com/jmespath/go-jmespath")func main() {    var jsonBlob = []byte(`[    {        "oeeId": 3162396,        "oeeDate": "2019-03-06T00:00:00",        "oee": 21.2    }]`)    var d interface{}    err := json.Unmarshal(jsonBlob, &d)    if err != nil {        log.Printf("1: %s", err)    }    res, err := jmespath.Search("{ labels: ['example'], datasets: [{label: 'Verfügbarkeit', data: [?oeeDate == `2019-03-06T00:00:00`].oee}]}", d)    if err != nil {        log.Printf("2: %s", err)    }    log.Println(res)}这也是Playground中示例的链接。当我执行此代码时,我收到以下错误:invalid character '-' after top-level value我想知道这段代码有什么问题,因为这个示例适用于其他 Jmespath 实现,如 javascript jmespath.js 库。错误似乎在查询而不是输入数据中。有人可以帮我解决这个问题吗?
查看完整描述

1 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

用单引号替换搜索字符串中的反引号可以消除错误。

改用这个:"{ labels: ['example'], datasets: [{label: 'Verfügbarkeit', data: [?oeeDate == '2019-03-06T00:00:00'].oee}]}".

没有更多的错误。


查看完整回答
反对 回复 2022-05-10
  • 1 回答
  • 0 关注
  • 155 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信