问题标签 [cheshire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 柴郡可以省略没有值的键吗?
我正在使用Cheshire为如下数据结构生成一些 JSON:
这会产生这样的 JSON:
我想要的是让 JSON 省略没有值的键;例如
柴郡能做到吗?我当然可以在调用之前预先过滤地图generate-string
,但是由于 Cheshire 无论如何都必须遍历我的数据结构,我认为指示 Cheshire 进行过滤会更好。
json - 将 Clojure 字节数组编码为 JSON
我需要将 Clojure 字节数组编码为 JSON。我一直在尝试使用 Cheshire 的add-encoder函数来做到这一点,如下所示:
问题是读者总是抱怨不匹配的分隔符。我正在尝试编码如下内容:
但这总是给我
所以我正在尝试添加一个自定义编码器。我是否以正确的方式这样做?
clojure - 在 Clojure 中将记录编码为带有附加类型字段的 JSON 对象
Cheshire 的自定义编码器似乎适合这个问题,我写了一个小辅助函数:
但它会产生一个奇怪的拖尾""
。
=> {"a":"abc","type":"A"} ""
这是什么原因造成的?还有另一种值得考虑的方法(我还需要能够解码回基于此类型令牌的记录)?
json - Clojure JSON:异常:com.fasterxml.jackson.core.JsonGenerationException:无法 JSON 编码类的对象:
我正在尝试使用 clojure neocons 在我的 Neo4j 数据存储中创建一个节点,但我遇到了一个我认为与格式化 json 相关的错误:
根据错误报告,我怀疑这可能与柴郡有关。但是我很困惑,因为我没有在发生错误的文件中包含 Cheshire 库。
我有这个作为我的包装器,因为我正在发出 cors POST 和 GET 请求,我需要从我的 controller.clj 返回 JSON
以下是我的 controller.clj 中引用的库
这是我的 controller.clj 中的 POST 端点代码
以下是通过我的模型并在 dao_graph.clj 中找到的引用库
以下是在 dao_graph.clj 中调用的函数的定义:
这是一个密码查询,它返回一个以“...”为键的地图
我非常感谢您帮助解决这个问题。
clojure - Clojure - json响应中的url“格式”
我用 Clojure liberator编写了一个 REST API ,并且我有这个功能,以构建 URL:
然后我使用halresource来表示资源并使用cheshire来解析 json。当我使用curl
时,在 json 响应中,URL 显示为:
但是如果我使用一些工具,比如 Postman,URL 会正确显示
有什么建议吗?
更新:我重新检查并正确生成了所有 json,但是当我使用 curl 或尝试通过浏览器访问端点时,URL 显示为:http:\/\/localhost:8080\/api\/customer\/1
clojure - 为什么 pmap|reducers/map 不使用所有 cpu 内核?
我正在尝试解析一个包含一百万行的文件,每一行都是一个 json 字符串,其中包含有关一本书的一些信息(作者、内容等)。我正在使用iota加载文件,因为OutOfMemoryError
如果我尝试使用slurp
. 我也在使用cheshire来解析字符串。该程序只需加载一个文件并计算所有书籍中的所有单词。
我的第一次尝试包括pmap
做繁重的工作,我认为这基本上会利用我所有的 cpu 内核。
虽然它似乎确实使用了所有核心,但每个核心很少使用超过 50% 的容量,我的猜测是它与 pmap 的批量大小有关,所以我偶然发现了一些相对较老的问题,其中一些评论引用了clojure.core.reducers
库.
我决定使用以下方法重写函数reducers/map
:
但是 cpu 使用率更差,与之前的实现相比,它甚至需要更长的时间才能完成:
我究竟做错了什么?解析大文件时,mmap loading + reducers 是正确的方法吗?
编辑:这是我正在使用的文件。
EDIT2:以下是使用iota/seq
而不是的时间iota/vec
:
jdbc - 在 clojure jdbc 中检查结果集是否为空
我将 clojure 与 jdbc、compojure、cheshire、postgresql、c3p0、tryin make REST 一起使用。当我将此代码用作处理程序时
如果 reslutset 不为空,我会根据需要进行响应,但如果它为空,我会得到空括号 []。
这也是我的项目依赖项
json - 在 clojure 中解码 JSON、clojure.data.json 和 cheshire.core,不能自定义解码 w/cheshire
我的项目使用读/写库解析 JSON,称为:
我遇到了问题,试图让解码(func)工作,所以我开始搞乱:
我的 JSON 包含由名为“zone”的字段组成的数据,其中包含一个带有 :keys 的向量,例如 {:zone : [:hand :table]} 存储在向量中的字符串中,如下所示:{“zone " : ["手" "桌子"]}
所以我想出了如何使用以下方法转换示例数据:
太好了,然后我需要弄清楚如何为 cheshire 实现解码器,我的逻辑无法做到这一点,我只花了大约一个小时的时间,但我一直在使用 data.json 和解码器我认为功能相对容易。
我让我的项目开始工作,这里是一些示例代码:
这是使用柴郡:
这是使用data.json:
我想从控制台得到这两个的底部结果:
问题是我想使用 cheshire ps 我正在阅读 cheshire 的工厂部分吗?也许这更容易?
clojure - 如何使用 GET 请求传递数据?
我想通过 GET 请求传递表单数据。
我在这个卷曲上取得了成功:
curl http://sample.com -d 'action=login_request&user_name=balvan'
但我需要从-d
. 使用此函数调用:
如何在请求正文中添加那些“-d”参数?
我有[org.httpkit.client :as http-client]
ns 声明和[cheshire "5.8.1"]
项目的依赖项。
clojure - 从 data.json 转换为 cheshire
我对 Clojure 完全陌生。有时我仍然在为阅读功能而苦恼。
我正在尝试更改此功能以使用 checkshire。这是我的尝试:
功能键阅读器功能:
功能 :
我比这样调用函数:
(json->messages 消息)
msg 是一个 json 字符串。
但是,我在尝试时收到以下错误:
tech.matterindustries.titan.ion.lambda.sqs-receive/json->messages (sqs_receive.clj:36) 处的执行错误 (ArityException)。传递给的 args (5) 数量错误:cheshire.core/parse-smile