Coldfusion 返回 JSON 数据

Coldfusion returning JSON data

大家劳动节快乐

正在尝试 return 来自 JSON 文件的可用数据。

这是我目前拥有的:

<cfhttp url="https://data.ny.gov/api/views/d6yy-54nr/rows.json?accessType=DOWNLOAD" method="get" result="httpResp" timeout="120">
<cfhttpparam type="header" name="Content-Type" value="application/json" />
</cfhttp>
<cfset pbdata=deserializeJSON(httpResp.filecontent)>
<cfdump var="#pbdata#">

这是哪个return:

我怎样才能将第 9 列和第 10 列变成可用的东西。

我的最终目标是有一个日期下拉字段,它将 return 该数据的中奖号码。

感谢您的宝贵时间。

<cfhttp url="https://data.ny.gov/api/views/d6yy-54nr/rows.json?accessType=DOWNLOAD" method="get" result="httpResp" timeout="120">
<cfhttpparam type="header" name="Content-Type" value="application/json" />
</cfhttp>
<cfset pbdata=deserializeJSON(httpResp.filecontent)>
<cfoutput>
<cfloop array="#pbdata#" index="i"> 
            <cfloop array="#i#" index="k"> 
               #i[k]#
            </cfloop>  
            <br/><br/>
 </cfloop>

        </cfoutput>

我尝试通过数组循环,但出现错误 "Object of type class coldfusion.runtime.Struct cannot be used as an array"。

我很难学习 CF 中的数据处理,谁能推荐好的教程。也在考虑找一个在线导师。但是对于 ColdFusion,它们似乎并不常见。任何建议将不胜感激。

试试这个代码

<cfhttp url="https://data.ny.gov/api/views/d6yy-54nr/rows.json?accessType=DOWNLOAD" method="get" result="httpResp" timeout="120">
    <cfhttpparam type="header" name="Content-Type" value="application/json" />
</cfhttp>
<cfset pbdata=deserializeJSON(httpResp.filecontent)>
<cfset winDate = pbdata.data[1][9]>
<cfset winnerList = pbdata.data[1][10]>
<cfoutput>
   Winner for the #winDate# are #winnerList#
</cfoutput>

改变这个:

<cfloop array="#pbdata#" index="i"> 
            <cfloop array="#i#" index="k"> 
               #i[k]#
            </cfloop>  
            <br/><br/>
 </cfloop>

为此:

<cfloop array="#pbdata.data[1]#" index="i"> 

               #pbdata.data[1][i]#
            <br/><br/>
 </cfloop>

您可能会看到您要查找的内容。您必须深入了解数组 - 它是一个数组的成员,该数组是看起来像 "data" 的结构的一部分。你将不得不尝试一下。 :)

这是我终于想到的。希望能帮到和我一样的初学者

<cfset pbdata=deserializeJSON(httpResp.filecontent)>
<cfoutput>

<cfloop from="1" to="#arrayLen(pbdata.data)#" index="i">


#i#: #pbdata.data[i][9]#  : #pbdata.data[i][10]#<br />
</cfloop>

</cfoutput>

JSON文件是一个数组的数组,它在结构"data"中。所以你必须遍历二维数组并提取元素 [9] 和 [10],它们是日期和中奖号码。