Groovy映射必须使用数字对象键转换为JSON对象

Groovy映射必须使用数字对象键转换为JSON对象,json,grails,flot,Json,Grails,Flot,我正在使用Groovy/Grails进行一些处理,结果是类型的映射 当将JSON对象返回给调用函数时(在本例中,它是一个需要[number,number]格式的flot图),键需要是一个数字。从理论上讲,这很好,因为我的地图键是字符串形式的数字。但是,我无法找到一种使用数字键创建JSON对象的方法 我得到的结果如下: {"1":-9.814244910221474,"2":-9.710478606504552,"3":-9.636841089398253,"4":-9.5241048191107

我正在使用Groovy/Grails进行一些处理,结果是
类型的映射

当将JSON对象返回给调用函数时(在本例中,它是一个需要[number,number]格式的flot图),键需要是一个数字。从理论上讲,这很好,因为我的地图键是字符串形式的数字。但是,我无法找到一种使用数字键创建JSON对象的方法

我得到的结果如下:

{"1":-9.814244910221474,"2":-9.710478606504552,"3":-9.636841089398253,"4":-9.524104819110796,"5":-9.522597036735684 ...}
而不是:

{1:-9.814244910221474,2:-9.710478606504552,3:-9.636841089398253,4:-9.524104819110796,5:-9.522597036735684 ...}

有人知道强制JSON Map.encodeAsJSON()生成整数键的方法吗?在编码之前,我已经尝试过显式地创建一个类型的映射,但这也不起作用。

Mike,我正在查看json规范——看起来键必须是字符串。你应该处理这个客户端


谢谢,提到JSON必须是数字格式,这很令人沮丧,所以我想我会处理这个客户端。@mike,注意根据JSON规范,数字可以是数组。我没有浏览整个api,但它们似乎支持阵列。如果它们要求对象键是数字,则它们不符合json。