gpt4 book ai didi

coldfusion - 使用 cfm 中的 SerializeJSON 如何只输出数据部分?

转载 作者:行者123 更新时间:2023-12-02 06:56:28 25 4
gpt4 key购买 nike

SerializeJSON(cfquery) 

创建一个如下所示的 JSON:

"COLUMNS":["POINT","LOCATION"],"DATA":[["41.322365,-71.679251","Ashaway...

如何只输出 JSON 数据?

即...

[["41.322365,-71.679251","Ashaway...

最佳答案

我不认为有一种方便的方法可以做到这一点,除非您可以修改序列化查询的代码;否则你将需要使用一些字符串操作。但是,假设您可以访问序列化查询的 CF 代码,这有点不正统但确实有效:

<!---Serialize and Deserialize the cfquery to shortcut obtaining a Structure--->
<cfset queryAsStruct = DeSerializeJSON(SerializeJSON(cfquery))>
<!---Now serialize the data key of the struct--->
<cfset dataJSON = SerializeJSON(queryAsStruct.data)>

正如我所说,也许不是最漂亮的……但似乎已经完成了。将 cfquery 转换为结构可能有更方便/更好的实践方法,但这种方法对我来说代码行最少。

编辑:只是想解释为什么这有效。 JSON 字符串在被 ColdFusion 反序列化时不再被检测为查询对象,只是一个普通的结构,因此创建并填充了“DATA”键。这样您就可以将其作为结构的键来访问。当 cfquery 是一个查询对象时,虽然它仍然是一个“结构”类型的对象,但它有一些特殊的注意事项,可以防止您直接访问数据键(据我所知)。

关于coldfusion - 使用 cfm 中的 SerializeJSON 如何只输出数据部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30495786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com