"invalid char in json text" error in Couchbase view results
这是我存储在存储桶中的文档。Id(key) 属性也是 screenName。
1 2 3 4 5 6 7 8 9 10 11 | { "created": null, "createdBy": null, "updated": null, "updatedBy": null, "screenName":"steelers", "appId":"100", "domain":"100$APPINFOTEAM", "alias":"steelers", "devision":"1" } |
我在 Couchbase 中有多个这种格式的文档。所以我需要按降序获取这些文件。所以这是我使用它的实现,
1 2 3 4 5 6 7 | Query query = new Query(); // Filter on the domain key query.setIncludeDocs(true); query.setDescending(true); query.setInclusiveEnd(true); query.setKey(domain); List<AppInfoTeam> appInfoTeam = appinfoTeamService.getAppInfoTeamForApp(query); |
这将给我准确的文档,无需排序。这是我的看法
1 2 3 4 5 | function (doc, meta) { if (doc._class =="com.link.twitter.pojo.AppInfoTeam") { emit(doc.domain, null); } } |
我还尝试使用 Couchbase 服务器界面过滤结果。我勾选了descending 和inclusive_end 值。也将域作为键。然后,当我单击显示结果按钮时,它会给我这个错误。
1 | url: ?stale=false&descending=true&inclusive_end=true&key=domain&connection_timeout=60000&limit=10&skip=0 |
错误:
1 2 3 | {"error":"bad_request","reason":"invalid UTF-8 JSON: {{error,{1,"lexical error: invalid char in json text.\\\ "}},\ "domain"}"} |
我该如何解决这个问题?
您需要用双引号将密钥括起来:
1 | <url>?stale=false&descending=true&inclusive_end=true&key="domain"&connection_timeout=60000&limit=10&skip=0 |