私はCheshireを使用して、次のようなデータ構造の JSON を生成しています。
(require '[cheshire.core :refer [generate-string])
(generate-string {:id 123, :foo "something", :bar nil})
次のような JSON が生成されます。
{"id": 123, "foo": "something", "bar": null}
私が望むのは、JSON が値のないキーを省略できるようにすることです。例えば
{"id": 123, "foo": "something"}
チェシャーはこれを行うことができますか?を呼び出す前にマップを事前にフィルター処理することはできますgenerate-string
が、とにかくチェシャーは私のデータ構造をトラバースする必要があるため、チェシャーにフィルター処理を行うように指示する方がパフォーマンスが高いと考えました。