2024年Clojure调查中分享您的想法!

欢迎!请查看关于页面以了解更多此工作方式的信息。

0
IO

"empty"关键词用处不大,但显然是有效的,例如:

({(keyword "") 1} (keyword ""))

但是打印和读取它会导致*无效的标记:

(read-string (pr-str{(keyword "") 1}))

在我的情况下,这种情况发生在Azure Rest API的响应中。我的测试在有线API时将返回数据存储为mock-data,用于在回归测试中使用,以模拟API。由于这种情况,测试使用模拟API时失败。
除了在pr-str之前尝试显式删除它外,还有没有其他方法?

2 个答案

+2
这正是我搜寻的链接!谢谢
0

为什么不使用字符串作为映射键,如果关键字太受限了?

也许你的 Azure 客户端通过关键字化键来解释 JSON。这是额外的工作,对于你的情况来说并没有帮助。也许你可以将其关闭。

我真的很不想改变我的应用程序代码。解决方案是在将代码存储到测试代码中之前手动删除不可读的关键字。
...