【发布时间】:2013-11-19 22:09:34
【问题描述】:
我们目前正在使用 cfhttp 将 JSON 字符串发布到 Netsuite ERP 平台。我注意到当我们发布数据时,我们遇到了很多奇怪的错误。大多数错误包含未终止的字符串文字。我已经通过 JSON lint 运行它们来验证 JSON 字符串是完全完美的,我注意到 Netsuite 的行为非常不稳定。
在进行一些研究时,我发现很多这些未终止的字符串文字错误有时与空格有关。我注意到当我测试我的输出时,我的代码返回了相当多的空白。我有一些内联 <cfif> 语句,这也可能是一些额外空白的原因。
我想知道是否有任何方法可以在 ColdFusion 中完全缩小 json 字符串中的任何空白?是否有一个函数可以清理 JSON 字符串,所以当我发布它们时,它们会抑制所有空格?
提前致谢。
【问题讨论】:
-
你是如何生成 JSON 的?你在用
serializeJSON吗?显示生成和执行 HTTP 请求的代码行会很有用。 -
在我看来,您是在手动构建 JSON...serializeJson() 不包含任何无关的空格。您能否发布一些示例代码,说明您如何创建 JSON 字符串以及 JSON 的外观。
-
如果您手动生成 JSON,您可以尝试使用 cfprocessingdirective suppressWhiteSpace=yes。但是我强烈建议使用相同的逻辑来创建对象/结构,然后使用 serializeJson() 将其转换为 JSON
标签: json coldfusion removing-whitespace